Русский_Проект:Функции Visual Basic

Встроенные функции Visual Basic

Список функций по алфавиту

A B C D E F G H I J K L M N
O P Q R S T U V W X Y Z

    A
  1. Abs
  2. Array
  3. Asc
  4. Atn
    B
    C
  5. CallByName
  6. CBool
  7. CByte
  8. CCur
  9. CDate
  10. CDbl
  11. CDec
  12. Choose
  13. Chr
  14. CInt
  15. CLng
  16. Command
  17. Cos
  18. CreateObject
  19. CSng
  20. CStr
  21. CurDir
  22. CVar
  23. CVDate
  24. CVErr
    D
  25. Date
  26. DateAdd
  27. DateDiff
  28. DatePart
  29. DateSerial
  30. DateValue
  31. Day
  32. DDB
  33. Dir
  34. DoEvents
    E
  35. Environ
  36. EOF
  37. Erl
  38. Error
  39. Exp
    F
  40. FileAttr
  41. FileDateTime
  42. FileLen
  43. Filter
  44. Fix
  45. Format
  46. FormatCurrency
  47. FormatDateTime
  48. FormatNumber
  49. FormatPercent
  50. FreeFile
  51. FV
    G
  52. GetAllSettings
  53. GetAttr
  54. GetAutoServerSettings
  55. GetObject
  56. GetSetting
    H
  57. Hex
  58. Hour
    I
  59. IIf
  60. IMEStatus
  61. Input
  62. InputBox
  63. InStr
  64. InStrRev
  65. Int
  66. IPmt
  67. IRR
  68. IsArray
  69. IsDate
  70. IsEmpty
  71. IsError
  72. IsMissing
  73. IsNull
  74. IsNumeric
  75. IsObject
    J
  76. Join
    K
    L
  77. LBound
  78. LCase
  79. Left
  80. Len
  81. LoadPicture
  82. LoadResData
  83. LoadResPicture
  84. LoadResString
  85. Loc
  86. LOF
  87. Log
  88. LTrim
    M
  89. MacID
  90. MacScript
  91. Mid
  92. Minute
  93. MIRR
  94. Month
  95. MonthName
  96. MsgBox
    N
  97. Now
  98. NPer
    O
  99. ObjPtr
  100. Oct
    P
  101. Partition
  102. Pmt
  103. PPmt
  104. PV
    Q
  105. QBColor
    R
  106. Rate
  107. Replace
  108. RGB
  109. Right
  110. Rnd
  111. Round
  112. RTrim
    S
  113. Second
  114. Seek
  115. Sgn
  116. Shell
  117. Sin
  118. SLN
  119. Space
  120. Spc
  121. Split
  122. Sqr
  123. Str
  124. StrComp
  125. StrConv
  126. String
  127. StrPtr
  128. StrReverse
  129. Switch
  130. SYD
    T
  131. Tab
  132. Tan
  133. Time
  134. Timer
  135. TimeSerial
  136. TimeValue
  137. Trim
  138. TypeName
    U
  139. UBound
  140. UCase
    V
  141. Val
  142. VarPtr
  143. VarType
    W
  144. Weekday


Функции Visual Basic: Введение

Функции Visual Basic

Visual Basic имеет более 140 встроенных функций и их число постоянно растет. В 6-ой версии было добавлено 14 новых функций. Знание функций поможет вам в решении сложных задач программирования

Именнованные аргументы

Функции могут иметь именнованные аргументы.
Именованный аргумент - аргумент, имеющий имя, определенное в библиотеке объектов. Вместо того, чтобы задавать значения аргументов в порядке, определяемом синтаксисом, использование именованных аргументов позволяет присваивать им значения в произвольном порядке. Предположим, что метод использует три аргумента:
DoSomeThing имяАрг1, имяАрг2, имяАрг3
Допустимым является присваивание значений этих аргументов в следующей инструкции:
DoSomeThing имяАрг3 := 4, имяАрг2 := 5, имяАрг1 := 20
Еще раз отметим, что не обязательно располагать именованные аргументы в определенном порядке

Недокументированные функции

Visual Basic может содержать недокументированные функции. Чтобы увидеть эти функции, откройте Object Browser(F2), щелкните правой кнопкой в правом открывшемся окне и выберите Show Hidden Members. В этом списке вы найдете все функции, методы, свойства, поддерживаемые Visual Basic. Разработчики не рекомендуют пользоваться недокументированными функциями из-за возможного отсутствия их поддержки в следующих версиях программы, что приведет к сбою в ваших программах при запуске ваших проектов в новой среде

Примечание:Если имя вашей функции совпадает с именем встроенной функции Visual Basic, то ваша функция заменяет ее. В этом случае, для обращения к встроенной функции необходимо явно задавать имя класса, например, VBA.IsNumeric


Abs

Функция Abs

Abs(Number)

Функция Abs(Absolute) служит для вычисления абсолютного значения(модуля) числа

Возвращаемое значение

В результате действия функции Abs возвращается значение, тип которого совпадает с типом переданного аргумента и равняется абсолютному значению указанного в аргументе числа

Параметры
Number
Обязательный аргумент может представлять любое допустимое числовое выражение. Если аргумент имеет значение Null, то возвращается также Null. Если аргумент - не инициализированная переменная, то возвращается нулевое значение
Пример
Dim A,B
A=Abs(50.3)  ' возвращается 50.3
B=Abs(-38.4) ' возвращается 38.4
Категория
Математические функции


Array

Функция Array

Array(ParamArray)

Функция Array служит для обработки массивов. Функция объявляет переменную типа Variant, присваиваемую массиву, а значения аргумента означают размерность массива

Параметры
ParamArray
Обязательный аргумент представляет собой разделенный запятыми список значений, присваемых массиву типа Variant, которые представляют собой значения элементов массива. Если аргумент ParamArray не указывается,напр. Array(), то создается массив нулевой длины
Примечание Первый элемент массива начинается с 0. Если хотите начать отчет с 1, используйте Option Base 1

Пример

' Переменная A типа Variant
'присваивается массиву. Затем с помощью функции Array
' объявляется структура массива A. Потом, другой переменной B
' присваивается значение второго элемента массива A
Dim A,B
A=Array(5,7,12)
B=A(2) ' в переменную B передается второй элемент массива A
Print B 'возвращается 7
Категория
Функции обработки массивов


Asc

Функция Asc

Asc(String)
AscB(String)
AscW(String)

Функция Asc(ASCII code) преобразует символ в числовое значение

Возвращаемое значение

В результате действия функции возвращается
Asc - код ANSI первого символа строки типа Integer
AscB - первый байт строки, вне зависимости от кодировки
AscW - Unicode-код для первого символа строки, если система поддерживает Unicode. В остальных случаях аналогична Asc

Параметры
String
Обязательный аргумент может представлять любое строковое выражение. Если строка не содержит символов, возникает ошибка выполнения
Пример
Dim retval
retval=Asc("Ananas") 'возвращается 65-код символа A
retval=Asc("a") 'возвращается 97-код символа a
Категория
Функции обработки строк


Atn

Функция Atn

Atn(Number)

Функция Atn определяет величину угла в радианах по указанному отношению длин двух сторон прямоугольного треугольника(противолежащего катета и прилежащего катета). Функция Atn является обратной к функции Tan, которая возвращает тангенс указанного угла

Возвращаемое значение

Возвращает значение типа Double, содержащее артангенс числа. Возвращаемое значение лежит в диапазоне от -pi/2 до pi/2 радиан

Параметры
Number Обязательный аргумент типа Double или любое допустимое числовое значение, задающее угол в радианах. Если аргумент не может быть оценен как число, генерируется ошибка времени исполнения Type mismatch

Пример

' Вычисляем значение pi
Dim pi
pi=4*Atn(1) 'вычисляет значение pi
Смотри также
Tan
Категория
Тригонометрические функции


CallByName

Функция CallByName

CallByName(Object,ProcName,CallType,[Args() ])

Новая функция, которая появилась в версии Visual Basic 6.0
Функция выполняет метод объекта или наборов или возвращает свойства объекта

Возвращаемое значение

Функция возвращает значение, возвращаемое вызываемое процедурой(если таковое есть)

Параметры
Object
Обязательный аргумент, содержащее выражение типа Variant(Object), представляющее имя объекта, на который будет воздействовать функция
ProcName
Обязательный аргумент, содержащее выражение типа Variant(String), представляющее строковое выражение, содержащее название свойства метода объекта. Аргумент нечувствителен к регистру
CallType
Обязательный аргумент, который передает константу типа vbCallType, представляющую тип вызываемой процедуры
Args()
Необязательный аргумент, содержащий выражение типа Variant(Array)

Значения константы vbCallType
Константа | Значение | Описание
vbMethod | 1 | Вызываемая процедура является методом, т.е. процедурой или функцией внутри объекта Object
vbGet | 2 | Вызываемая процедура является процедурой чтения занчения свойства объекта(Property Get)
vbLet | 4 | Вызываемая процедура является процедурой присвоения значения свойству объекта(Property Let)
vbSet | 8 | Вызываемая процедура является процедурой присвоения свойству объекта объектной ссылки(Property Set)

Пример

' Установим свойство MousePointer текстового поля
CallByName Text1, "MousePointer", vbLet, vbCrossHair
Категория
Функции обработки системных параметров


CBool

Функция CBool

CBool(Expression)

Функция CBool(Conversion to Bool) преобразует выражение в тип Boolean

Возвращаемое значение

Если результатом выражения является ненулевое значение, CBool возвращает True(-1), в противном случае возвращается False(0)

Параметры
Expression
Обязательный аргумент типа String или числовое выражение
Если аргумент имеет тип данных String, он должен представлять число, иначе генерируется ошибка стадии выполнения 13 - Type mismatch
Пример
Dim A, B, retval
' инициализируем переменные
A=5
B=5
retval=CBool(A=B) ' переменная retval содержит True
Категория
Функции преобразования типа данных


CByte

Функция CByte

CByte(Expression)

Функция CByte(Conversion to Byte) преобразует выражение в тип Byte

Параметры
Expression
Обязательный аргумент представляет собой любое числовое выражение или строка, представляющая собой число без знака в диапазоне значений от 0 до 255.
Если Expression является дробным числом, CByte округляет его следующим образом:
Если дробная часть меньше 0.5, она отбрасывается. Если больше 0.5, то к целой части прибавляется единица. Если равна точно 0.5, то округляется до ближайшего четного числа
Если аргумент имеет тип данных String, он должен представлят число, иначе генерируется ошибка стадии выполнения 13 - Type mismatch.
Если Expression меньше 0 или больше 255, генерируется ошибка стадии выполнения Overflow
Пример
Dim A, retval
A=123.4567 ' имеет тип Double
retval=CByte(A) ' переменная retval содержит 123
Debug.Print retval
Категория
Функции преобразования типа данных


CCur

Функция CCur

CCur(Expression)

Функция CCur(Conversion to Currency) преобразует выражение в денежный тип Currency

Параметры
Expression
Обязательный аргумент представляет собой любое числовое выражение или строку, представляющую собой число без знака в диапазоне значений от -922 337 203 685 477.5808 до 922 337 203 685 477.5807
Если Expression является дробным числом с более чем четырьмя знаками в дробной части, CCur округляет его до четырех десятичных знаков
Если Expression не попадает в диапазон допустимых значений Currency, генерируется ошибка стадии выполнения Overflow
Единственная локализованная информация, включаемая в возвращаемое значение CCur - это разделитель дробной части
Пример
Dim A
A=123.456789 ' тип Double
' Преобразуем в значение типа Currency
Debug.Print CCur(A*2)
Категория
Функции преобразования типа данных


CDate

Функция CDate

CDate(Expression)

Функция CDate(Conversion to Date) преобразует выражение в тип Date

Параметры
Expression
Обязательный аргумент представляет собой любое выражение, представляющую календарную дату. Последовательность элементов даты(день, месяц, год) в аргументе Expression, распознаваемом как дата, определяются установками текущего компьютера
Пример
Dim A, retval
A="Июль 27,1966" ' выбираем дату
' Преобразуем результат в значение типа Date
retval=CDate(A)
Debug.Print retval
Смотри также
CVDate
Категория
Функции преобразования типа данных


CDbl

Функция CDbl

CDbl(Expression)

Функция CDbl(Conversion to Doble) преобразует выражение в тип данных двойной точности Double

Параметры
Expression
Обязательный аргумент представляет собой любое числовое выражение или строку, представляющую число в диапазоне значений от -1.79769313486232E308 до -4.94065645841247E-324 для отрицательных значений, и от 4.94065645841247E-324 до 1.79769313486232E308 для положительных значений
Если Expression не попадает в диапазон допустимых значений Double, генерируется ошибка стадии выполнения Overflow
Если Expression имеет тип данных String, он должен представлять число, иначе генерируется ошибка стадии выполнения Type mismatch
Пример
Dim A, retval
A=CCur(123.4567) ' устанавливаем тип Currency
' Преобразуем результат в значение типа Double
retval=CDbl(A*1.7)
Debug.Print retval
Категория
Функции преобразования типа данных


CDec

Функция CDec

CDec(Expression)

Функция CDec(Conversion to Decimal) используется для преобразования аргумента в субтип Decimal типа данных Variant. Поскольку в Visual Basic нет встроенного типа данных Decimal, аргумент преобразовывается в тип Variant с субтипом Decimal. Субтип Decimal обычно применяют для максимально точного представления чисел, с трудом вписывающихся в допустимый диапазон чисел Visual Basic(т.е. чисел с очень большим или очень малым абсолютным значением или чисел с большим количеством значащих цифр после запятой

Возвращаемое значение

Функция возвращает значение Expression, преобразованное в субтип данных Decimal типа данных Variant

Параметры
Expression
Любое числовое значение или строка, представляющая целое число в диапазоне +/-79 228 162 514 264 337 593 543 950 335 или смешанное с не более чем 28 цифрами в дробной части в диапазоне +/-7.9228162514264337593543950335. Минимально возможное ненулевое число 0.0000000000000000000000000001
Если аргумент не попадает в диапазон допустимых значений Double, то генерируется ошибка стадии выполнения Overflow
Если аргумент имеет тип данных String, он должен представлять число, иначе генерируется ошибка стадии выполнения Type mismatch
Пример
Dim retval
retval = CDec(1.20000000000099)' преобразуем в Decimal
Debug.Print retval
Категория
Функции преобразования типа данных


Choose

Функция Choose

Choose(Index,item1 [, item2 [ ,..., [ itemN]] )

Функция Choose выполняет выборку элемента по его порядковому номеру(индексу) в списке элементов, возвращая значение выбранного элемента

Возвращаемое значение

Функция Choose возвращает значение Null, если значение Index меньше 1 или больше числа элементов в списке. Если значение Index не целое число, то перед обработкой списка оно округляется до ближайшего целого числа

Параметры
Index
Обязательный аргумент представляет собой выражение типа Single
item1
Обязательный аргумент представляет собой список типа Variant возвращаемых элементов, разделенных запятой
Item2,...itemN
Необязательные аргументы аналогичны аргументу item1
Пример
Dim retval
retval = Choose(4, "банан", "ананас", "баунти","пепси", "сникерс")
Debug.Print retval ' новое поколение выбирает пепси
Категория
Функции загрузки данных


Chr

Функция Chr

Chr(CharCode)
Chr$(CharCode)
ChrB(CharCode)
ChrW(CharCode)

Функция Chr(Character)позволяет получить символ по значению его числового кода ANSI или Unicode

Возвращаемое значение

Функции Chr, ChrB, ChrW возвращают значение субтипа String типа Variant, содержащее символ, соответствующий указанному коду символа ANSI или Unicode. Функции Chr$, ChrB$, ChrW$ возвращают соответственно значение типа String

Примечание

Chr и Chr$ возвращают символ по его кодировке в стандарте ANSI
ChrB и ChrB$ возвращают однобайтовую строку
ChrW возвращает символ Unicode, однако в системах, не поддерживающих Unicode, ее поведение аналогично Chr
Использование в параметре CharCode значения больше, чем 255, генерирует ошибки стадии выполнения 5: Invalid procedure call or argument или 6: Overflow

Параметры
CharCode
Обязательный аргумент является значением типа Long, определяющим символ. Обычно, функция Chr применяется при вставке в текстовые строки непечатных символов(возврат каретки, перевод строки, табулятор и т.д.). Коды 0-31 соответствуют стандартным управляющим символам ASCII. Например, Chr(10) возвращает символ перевода строки
Пример
Dim retval
retval = Chr(65)
Debug.Print retval ' возвращается A
Категория
Функции обработки строк


CInt

Функция CInt

CInt(Expression)

Функция CInt(Conversion to Integer) используется для приведения выражения в тип Integer

Возвращаемое значение

Функция CInt возвращает значение аргумента, преобразованное в числовой целый тип данных Integer. Дробная часть при этом округляется

Параметры
Expression
Любое числовое выражение или строка,представляющая число от -32768 до 32767
Если числовое значение Expression не попадает в диапазон допустимых значений, происходит ошибка стадии выполнения Overflow.
Если Expression имеет тип данных String,то он должен быть числом, иначе возникает ошибка стадии выполнения Type mismatch.
Если дробная часть Expression равна 0.5, CInt всегда округляет его до ближайшего четного числа, т.е. CInt(2.5)= 2, a CInt(1.5)= 2
Пример
Dim A, retval
A=1234.5678  ' A имеет тип Double
retval = CInt(A)' преобразуем в Integer
Debug.Print retval ' получаем 1235
Категория
Функции преобразования типов данных


CLng

Функция CLng

CLng(Expression)

Функция CLng(Conversion to Long) используется для приведения выражения в тип Long

Возвращаемое значение

Функция CLng возвращает значение Expression, преобразованное в числовой длинный тип данных Long. Дробная часть при этом округляется

Параметры
Expression
Любое числовое выражение или строка, представляющая число от -2147483648 до 2147483647
Если числовое значение Expression не попадает в диапазон допустимых значений, происходит ошибка стадии выполнения Overflow.
Если Expression имеет тип данных String,то он должен быть числом,иначе возникает ошибка стадии выполнения Type mismasth.
Если дробная часть Expression равна 0.5, CLng всегда округляет его до ближайшего четного числа, т.е. CLng(0.5)=0, a CLng(1.5)=2
Пример
Dim A,retval
A=1234.5678  ' A имеет тип Double
retval = CLng(A)' преобразуем в Long
Debug.Print retval ' получаем 1235
Категория
Функции преобразования типов данных


Command

Функция Command

Command

Функция Command применяется для запуска приложения с различными опциями с использованием командной строки

Возвращаемое значение

Функция возвращает параметры командной строки,указанные в строке запуска программы(в окне запуска программы или в окне свойств ярлыка в поле Объект

Пример
' Пример передачи аргументов командной строки в функцию,
' которая возвращает их в переменной типа Variant,
' содержащей массив
Function GetCommandLine(Optional MaxArgs)
   ' Объявляем переменные
   Dim C, CmdLine, CmdLnLen, InArg, I, NumArgs
   ' Проверка наличия MaxArgs
   If IsMissing(MaxArgs) Then MaxArgs = 10
   ' Задание корректной размерности массива
   ReDim ArgArray(MaxArgs)
   NumArgs = 0: InArg = False
   ' Получаем аргументы командной строки
   CmdLine = Command()
   CmdLnLen = Len(CmdLine)
   ' Анализ всех символов командной строки
   For I = 1 To CmdLnLen
      C = Mid(CmdLine, I, 1)
      ' Проверка наличия пробела или табуляции
      If (C < > " " And C < > vbTab) Then
         ' пробел и табуляция не обнаружены
         ' Проверка наличия аргумента
         If Not InArg Then
         ' Начало нового аргумента
         ' Проверка количества аргументов
            If NumArgs = MaxArgs Then Exit For
            NumArgs = NumArgs + 1
            InArg = True
         End If
         ' Добавляем символ к текущему аргументу
         ArgArray(NumArgs) = ArgArray(NumArgs) & C
      Else
         ' Если найден символ пробела или табуляции,
         ' устанавливаем флаг InArg flag в False
         InArg = False
      End If
   Next I
   ' Меняем размер массива
   ReDim Preserve ArgArray(NumArgs)
   ' Возвращает массив в качестве имени функции
   GetCommandLine = ArgArray()
End Function
Категория
Функции обработки системных параметров


Cos

Функция Cos

Cos(Number)

Функция Cos вычисляет косинус угла. Аргумент задается в радианах, а не в градусах! Для того, чтобы перевести градусы в радианы используйте формулу
Угол(в радианах) = угол(в градусах) * pi/180, где pi=3.14159265358979. См. пример

Возвращаемое значение

Функция возвращает величину с типом данных Double, лежащую в диапазоне от -1 до 1

Параметры
Number
Обязательный аргумент представляет собой значение типа Double, задающее угол в радианах. Если аргумент не может быть оценен как число, генерируется ошибка времени исполнения Type mismatch
Пример
' Вычисляем косинус прямого угла

Dim MyAngle, retval, GradToRad
Const pi = 3.14159265358979 ' определяем константу pi
MyAngle=90 ' задаем угол в градусах
GradToRad=MyAngle*pi/180 ' переводим градусы в радианы
retval=Cos(GradToRad) ' вычисляем косинус прямого угла
Debug.Print retval
Категория
Тригонометрические функции


CreateObject

Функция CreateObject

CreateObject(Class,[ServerName])

Функция CreateObject создает экземпляр ActiveX(OLE Automation)-объекта. Приложение Visual Basic может использовать как встроенные, так и внешние объекты, которые встроены в другие программные объекты(приложения,библиотеки и т.д.), поддерживающие технологию OLE Automation. Прежде чем использовать какой-либо объект в программе, необходимо создать экземпляр данного объекта. Применение функции CreateObject и является одним из способов создания объекта

Возвращаемое значение

Возвращает ссылку на созданный объект ActiveX

Параметры
Class
Обязательный аргумент типа String - имя класса(объекта) ActiveX
ServerName
Необязательный аргумент типа String - имя удаленной машины(сервера), на которой будет создаваться ActiveX. По умолчанию создается на локальной машине

Пример

Категория
Функции работы с объектами


CSng

Функция CSng

CSng(Expression)

Функция CSng(Conversion to Single) используется для приведения выражения в тип Single

Возвращаемое значение

Функция CSng возвращает значение Expression, преобразованное в числовой длинный тип данных с плавающей запятой обычной точности Single.
Если числовое значение Expression по абсолютной величине меньше минимального допустимого значения диапазона Single, CSng возвращает 0.
Если числовое значение Expression по абсолютной величине превышает максимальное допустимое значение Single, генерируется ошибка стадии выполнения Overflow.
Если Expression имеет тип данных String, то он должен быть числом, иначе возникает ошибка стадии выполнения Type mismasth.
Если число знаков в дробной части Expression выходит за пределы допустимого значения диапазона Single, CSng усекает ее

Параметры
Expression
Любое числовое выражение или строка, представляющая число от -3.402823E8 до -1.401298E-45 для отрицательных значений и от 1.401298E-45 до 3.402823E8 для положительных значений
Пример
Dim A, retval
A=1234.56789  ' A имеет тип Double
retval =CSng(A)' преобразуем в Single
Debug.Print retval ' получаем 1235.568
Категория
Функции преобразования типа данных


CStr

Функция CStr

CStr(Expression)

Функция CStr(Conversion to String) используется для приведения числового выражения в строку (тип String)

Возвращаемое значение

Функция CStr возвращает значение Expression, преобразованное в строковый тип данных String.
Функция CStr эквивалентна старой функции Str

Параметры
Expression
Любое выражение, которое можно записать в виде строки
Пример
Dim retval
retval=CStr(1234.56789)' преобразуем Double в String
Form1.Caption= retval ' выводим строку в заголовке формы
Схожие функции
Str
Категория
Функции преобразования типа данных


CurDir

Функция CurDir

CurDir[ (Drive) ]
CurDir$[ (Drive) ]

Функция CurDir(Current Directory) определяет текущую рабочую папку

Возвращаемое значение

Функция CurDir возвращает данные подтипа String типа Variant. Функция CurDir$ возвращает данные типа String

Параметры
Drive
Необязательный аргумент. Строковое выражение, указывающее на текущую рабочую папку. Если аргумент Drive не указан или является пустой строкой(""), то функция CurDir возвращает путь к текущей рабочей папке текущего рабочего диска.
Drive задается только буквой с необязательным двоеточием после нее("C" или "C:").
Если Drive задан неправильно или не существует, генерируется ошибка стадии исполнения Device unavaible
Поскольку фунция воспринимает только однобуквенные названия дисков, использовать сетевые имена дисков нельзя

Пример

Dim retval
retval=CurDir("C")
Form1.Caption= retval ' выводим строку в заголовке формы
Категория
Функции работы с файлами


CVar

Функция CVar

CVar(Expression)

Функция CVar(Conversion to Variant) используется для приведения выражения в тип Variant

Возвращаемое значение

Функция возвращает значение Expression, преобразованное в тип данных Variant

Параметры
Expression
Любое числовое значение или строка
Пример
Dim A, retval
A=1234  ' A имеет тип Integer
retval = CVar(A & "0000")' преобразуем в Variant
Debug.Print retval ' получаем 12340000
Категория
Функции преобразования типа данных


CVDate

Функция CVDate

CVDate(Expression)

Функция CVDate(ConVert to Date) преобразует выражение в тип Date. Эта функция осталась в Visual Basic исключительно для совместимости с предыдущими версиями Visual Basic. Используйте функцию CDate

Параметры
Expression
Обязательный аргумент представляет собой любое выражение, представляющую календарную дату. Последовательность элементов даты(день,месяц,год) в аргументе expression, распознаваемом как дата, определяются установками текущего компьютера
Пример
Dim A, retval
A="Июль 27,1966" ' выбираем дату
retval=CVDate(A) ' преобразует результат в значение типа Date
Debug.Print retval
Смотри также
CDate
Категория
Функции преобразования типа данных


CVErr

Функция CVErr

CVErr(Expression)

Функция CVErr создает пользовательскую ошибку в пользовательской процедуре. Используя функцию, можно возвращать из пользовательской процедуры код ошибки, которая не является ошибкой с точки зрения системы и обработать ее без системных обработчиков. Хотя внешне возвращаемое значение выглядит как строка, на самом деле оно имеет тип Variant субтипа Error

Возвращаемое значение

Функция возвращает данные типа Variant субтипа Error, содержащее ошибку с номером Expression

Параметры
Expression
Любое целое число Long
Пример
Debug.Print CVErr(27)' возвращает "Error 27"
Категория
Функции обработки системных параметров


Date

Функция Date

Date
Date$

Функция Date позволяет получить текущую системную дату по системному календарю компьютера

Возвращаемое значение

Date возвращает значение типа Variant субтитпа Date, Date$ возвращает данные типа String, содержащее текущую системную дату. Формат даты, возвращаемый функцией, определяется национальными системными установками

Параметры

Функция не имеет аргументов

Пример
' Выводим текущую системную дату в заголовке формы
Dim Today
Today=Date ' узнаем текущую системную дату
' Преобразуем в строку и выводим в заголовке формы
Form1.Caption = CStr(Today)
Смотри также
Now
Категория
Функции дат и времени


DateAdd

Функция DateAdd

DateAdd(Interval, Number, Date)

Функция DateAdd используется для прибавления или вычитания указанного интервала времени. Тип данных Date работает только с датами диапазона от 100 г.н.э. до 9999 г.н.э. Поэтому, если DateAdd выходит за пределы этого диапазона, то генерируется ошибка стадии выполнения Invalid procedure call or argument. Функция DateAdd не возвращает неправильных дат. Следующее выражение добавляет один месяц к 31 января:

DateAdd("m", 1, "31-Jan-95")

В данном случае будет возвращена дата 28-фев-95, а не 31-фев-95. Если в качестве аргумента date указать 31-янв-96, то возвращается дата 29-фев-96, поскольку 1996 год является високосным

Возвращаемое значение

Возвращает значение типа Variant(Date), содержащее дату, к которой добавлен указанный интервал

Параметры
Функция содержит именованные аргументы
Interval
Обязательный аргумент типа String, указывающего тип добавляемого временного интервала:
yyyy | Год
q | Квартал
m | Месяц
y | День года
d | День месяца
w | День недели
ww | Неделя
h | Часы
n | Минуты
s | Секунды
Interval не чуствителен к регистру букв. Литерал должен быть заключен в кавычки. Для добавления дней можно использовать любое значение интервала дня:"y", "w" или "d"
Number
Обязательный аргумент - числовое выражение, указывающее число добавляемых временных интервалов. Может быть положительным(для получения более поздних дат) и отрицательным(для получения более ранних дат). Если Number дробное число, то дробная часть отбрасывается(не округляется) системой
Date
Обязательный аргумент типа Variant(Date) или литерал даты(буквенное обозначение даты, представляющий дату, к которой прибавляется указанный временной интервал
Пример
' Вычисляем дату на 15 дней более позднюю, чем текущая
Dim Today
Dim NewDate As Date
Today=Date ' узнаем текущую системную дату
NewDate=DateAdd("y",15,Today)
 ' Преобразуем в строку и выводим в заголовке формы
Form1.Caption = CStr(NewDate)
Смотри также
DateDiff, DatePart, DateSerial
Категория
Функции дат и времени


DateDiff

Функция DateDiff

DateDiff(Interval,Date1,Date2,[FirstDayOfWeek],[FirstWeekOfYear])

Функция DateDiff используется для вычисления разности двух дат

Возвращаемое значение

Возвращает значение типа Variant(Long), указывающее число временных интервалов между двумя датами

Параметры
Функция содержит именованные аргументы
Interval
Обязательный аргумент типа String, указывающего тип добавляемого временного интервала:
yyyy
Год
q
Квартал
m
Месяц
y
День года
d
День месяца
w
День недели
ww
Неделя
h
Часы
n
Минуты
s
Секунды
Interval не чуствителен к регистру букв.Литерал должен быть заключен в кавычки. Для вычисления дней между двумя датами можно использовать значение интервала дня:"y" или "d"
Date1
Обязательный аргумент типа Variant(Date) или литерал даты - первая календарная дата при вычислении разности дат
Date2
Обязательный аргумент типа Variant(Date) или литерал даты - вторая календарная дата при вычислении разности дат
FirstDayOfWeek
Необязательный аргумент типа Long, определяющего день недели. Допускается использование констант:
vbUseSystem=0
Используется значение национальных системных установок
vbSunday=1
Воскресенье(по умолчанию)
vbMonday=2
Понедельник
vbTuesday=3
Вторник
vbWednesday=4
Среда
vbThursday=5
Четверг
vbFriday=6
Пятница
vbSaturday
Суббота
FirstWeekOfYear
Необязательный аргумент - числовая константа, указывающая, какой день недели считать первым:
vbUseSystem=0
Используется системная информация
vbFirstJan1=1
Неделя, содержащая 1 января
vbFirstFourDays=2
Первая неделя, содержащая как минимум 4 дня нового года
vbFirstFullWeek=3
Первая полная неделя года
Пример
' Вычисляем сколько дней осталось до 21 века
Dim Today as Date' сегодняшний день
Dim Millenium As Date' 1 день 21 века
Dim retval' возвращаемое значение
Today=Date ' узнаем текущую системную дату
Millenium="01.01.01"
retval=DateDiff("d",Today,Millenium)
Form1.Caption = CStr(retval)  ' выводим в заголовке формы
Смотри также
DatePart,DateSerial
Категория
Функции дат и времени


DatePart

Функция DatePart

DatePart(Interval,Date,[FirstDayOfWeek],[FirstWeekOfYear])

Функция DatePart используется для определения указанного компонента даты

Возвращаемое значение

Возвращает значение типа Variant(Integer), содержащее указанный компонент даты

Параметры

Функция содержит именованные аргументы

Interval
Обязательный аргумент типа String, указывающего тип временного интервала:
yyyy
Год
q
Квартал
m
Месяц
y
День года
d
День месяца
w
День недели
ww
Неделя
h
Часы
n
Минуты
s
Секунды
Interval не чуствителен к регистру букв. Литерал должен быть заключен в кавычки. Для вычисления дней между двумя датами можно использовать значение интервала дня:"y" или "d"
Date
Обязательный аргумент типа Variant(Date) или литерал даты - календарная дата, из которой извлекается компонент
FirstDayOfWeek
Необязательный аргумент типа Long, определяющего первый день недели. Допускается использование констант:
vbUseSystem=0
Используется значение национальных системных установок
vbSunday=1
Воскресенье(по умолчанию)
vbMonday=2
Понедельник
vbTuesday=3
Вторник
vbWednesday=4
Среда
vbThursday=5
Четверг
vbFriday=6
Пятница
vbSaturday
Суббота
FirstDayOfWeek влияет только на вычисления с "w" и "ww"
FirstWeekOfYear
Необязательный аргумент - числовая константа, указывающая, какую неделю считать первой в году:
vbUseSystem=0
Используется системная информация
vbFirstJan1=1
Неделя, содержащая 1 января
vbFirstFourDays=2
Первая неделя, содержащая как минимум 4 дня нового года
vbFirstFullWeek=3
Первая полная неделя года
Пример
' Вычисляем какой сейчас месяц
MsgBox "Сейчас " & DatePart("m", Now) & " месяц года"
Смотри также
DateDiff, DateSerial
Категория
Функции дат и времени


DateSerial

Функция DateSerial

DateSerial(Year,Month,Day)

Функция DateSerial используется для получения даты во внутреннем представлении системы по заданным значениям компонентов даты(года,месяца,дня). Дата во внутреннем представлении - это число дней от установленного в системе начального значения. Функция DateSerial вычисляет по значениям компонентов требуемое число дней. Значения любых компонентов могут быть отрицательными или превышать допустимые календарные значения(12 для месяца и 31 для дня), если результат при этот попадает в допустимый диапазон значений Date. Если значение какого-либо компонента превышает допустимое значение для этого компонента, то изменяется другой компонент даты. Например, 33 дня означают 1 месяц и 2 или 3 дня (в зависимости от месяца)

Возвращаемое значение

Возвращает значение типа Variant(Date). Если полученный результат не попадает допустимый диапазон календарных дат, генерируется ошибка стадии выполнения Invalid procedure call or argument

Параметры
Функция содержит именованные аргументы
Year
Обязательный аргумент типа Integer в диапазоне от 100 до 9999, задающий значение года
Windows98/2000 По умолчанию, при использовании в аргументе двух цифр, функция интерпретирует их следующим образом:
0-29 интервал между 2000 и 2029 годами
30-99 интервал между 1930 и 1999 годами
В остальных случаях используйте четыре цифры(напр., 1147)
Month
Обязательный аргумент типа Integer, задающий значение месяца. Может содержать любое числовое выражение
Day
Обязательный аргумент типа Integer, задающий значение дня. Может содержать любое числовое выражение
Примечание Если любой из аргументов выходит из допустимых значений Integer, генерируется ошибка стадии выполнения Overflow
Пример
' Вычисляем дату, предшествующую
' на 5 дней дате 1 августа 1966 года
Dim MyDate
MyDate = DateSerial(1966, 8,1 -4)   ' возвращает 27.07.66
Print MyDate
Смотри также
DateAdd
Категория
Функции дат и времени


DateValue

Функция DateValue

DateValue(Date)

Функция DateValue используется для получения даты во внутреннем представлении системы по заданной строке, содержащей дату. Дата во внутреннем представлении - это число дней от установленного в системе начального значения. Рекомендуется использовать более мощную функцию CDate, лучше понимающую национальные установки

Возвращаемое значение

Возвращает значение типа Variant(Date) в коротком формате даты, соответствующим национальным установкам системы

Параметры
Date
Обязательный аргумент типа String, представляющую собой строку, содержащую дату в любом формате в диапазоне от 1 января 100 года до 31 декабря 9999 года. Допускается использовать только те разделители даты, которые распознаются вашей системой. Если год в аргументе опущен, то по умолчанию подставляется год из системной даты. Если аргумент содержит значения времени, они просто отбрасываются, но при неправильном значении времени при правильно заданной дате генерируется ошибка времени исполнения Type mismastch
Пример
' Извлекаем дату из строки
Print DateValue("27 Июля 1966")
Смотри также
CDate
Категория
Функции дат и времени


Day

Функция Day

Day(Date)

Функция Day используется для получения дня месяца из даты. Отчет дат начинается с 31 декабря 1899 года, поэтому нулевым днем будет 30 декабря, а при отрицательных значениях будет показана предыдущая дата

Возвращаемое значение

Возвращает значение типа Variant(Integer) от 1 до 31, которое представляет день месяца

Параметры
Date
Обязательный аргумент, представляющий собой любое выражение, оцениваемую как дату. Допустимый диапазон дат:от 01.01.0000 до 31.12.9999
Пример
' Извлекаем день месяца из строки
Print Day("27 Июля 1966")
Смотри также
Month, WeekDay, Year
Категория
Функции дат и времени


DDB

Функция DDB

DDB(Cost, Salvage, Life, Period, [Factor])

Функция DDB используется для вычисления годовой амортизации фондов для заданного года с использованием метода двукратного учета амортизации или иного явно указанного показателя учета

Возвращаемое значение

Возвращает значение типа Double, содержащее величину амортизации за заданный год

Параметры
Функция содержит именованные аргументы
Cost
Обязательный аргумент типа Double - Начальная стоимость фондов
Salvage
Обязательный аргумент типа Double - Стоимость фондов к концу эксплуатации
Life
Обязательный аргумент типа Double - Длительность эксплуатации фондов
Period
Обязательный аргумент типа Double - Период времени, для которого вычисляется снижение стоимости
Factor
Необязательный аргумент типа Variant - Показатель учета амортизации. Если аргумент опущен, то по умолчанию равен 2(метод учета двойного убывания стоимости оцениваемых фондов)
Все аргументы должны быть положительными числами
Аргументы Life и Period должны задаваться в одних и тех же единицах
Пример
' Расчет суммы амортизационных отчислений
' за период 2 года за фонды стоимостью
' 100 000 рублей, срок эксплуатации
' которых не превышает четырех лет,
' при 20 процентах годового
' снижения стоимости
Dim retval As Double
retval = DDB(1000000, 0, 4, 2, 1.2)
Print retval
Смотри также
SYD
Категория
Финансовые функции


Dir

Функция Dir

Dir [(PathName[, Attributes])]
Dir$ [(PathName[, Attributes])]

Функция Dir служит для проверки существования каталога или файла, отвечающих заданному образцу. Функция поддерживает использование подстановочных знаков для нескольких символов(*) и одиночного символа(?) для указания нескольких файлов. Функция возвращает первое имя файла, имя которого соответствует аргументу PathName. Для получения остальных файлов, имена которых соответствуют PathName, следует повторно вызвать функцию Dir без аргументов. Последовательные вызовы функции без аргументов возможны до тех пор, пока имеются файлы или папки, соответствующие образцу первого вызова(с аргументами)
Примечание: Рекурсивные вызовы функции Dir запрещены

Возвращаемое значение

Функция возвращает данные типа String, структурно представляющего имя файла или папки, которые удовлетворяют указанному шаблону имени файла, набору атрибутов файла или метке тома на диске. Если аргумент PathName не найден, то функция Dir возвращает пустую строку(" ")
Примечание: Если после возврата функцией пустой строки, снова вызвать функцию без аргументов, то возникает ошибка времени исполнения Invalid procedure call or argument

Параметры
PathName
Необязательный аргумент. Строковое выражение, указывающее имя файла. Также может содержать имя каталога или папки и диска. При использовании имен файлов или папок, содержащих пробелы следует использовать дополнительные кавычки - Dir(""C:\Русский Проект\app.exe"") или Dir(Chr(34) & "C:\Русский Проект\app.exe" & Chr(34))
Примечание: Хотя PathName указан, как необязательный аргумент, он обязателен при первом вызове функции, а также в случаях, если задан аргумент Attributes
Attributes
Необязательный аргумент, содержащий константу или числовое выражение, описывающее атрибуты файла. Если этот аргумент опущен, возвращаются все файлы, имена которых удовлетворяют содержимому аргумента PathName. Допустимые значения Attributes
vbNormal=0
Обычное состояние файла.Используется по умолчанию
vbReadOnly=1
Атрибут только для чтения
vbHidden=2
Скрытый атрибут
vbSystem=4
Системный атрибут
vbVolume=8
Метка тома
vbDirectory=16
Каталог или папка
Примечание: Можно также указывать комбинации атрибутов путем их суммирования
Например, vbHidden+vbDirectory выводит скрытые папки
Пример
Dim retval
 ' При наличии выводит WIN.INI
retval=Dir("c:\windows\win.ini")
Print retval
' Возвращает имя файла с расширением txt
' При наличии нескольких файлов возвращается
' первый найденный файл
retval = Dir("c:\windows\*.txt")
Print retval
Категория
Функции работы с файлами


DoEvents

Функция DoEvents

DoEvents()

Функция передает управление операционной системе для обработки событий и сообщений, ждущих в системной очереди и всех нажатий клавиш из очереди SendKeys. После обработки всех событий управление возвращается приложению(следующий за строкой DoEvents инструкции. Применяется для обеспечения возможности прерывания пользователем какой-нибудь длительной операции, выполняемой программой

Возвращаемое значение

Функция возвращает значение типа Integer, определяющих число открытых форм в Visual Basic, в других приложениях возвращается 0

Пример
' Создание переменной для хранения
' числа загруженных и видимых форм VB
Dim I, OpenForms
For I = 1 To 150000   ' Начало цикла
   If I Mod 1000 = 0 Then    ' Если цикл выполнен 1000 раз
' Передает управление операционной системе
      OpenForms = DoEvents
   End If
Next I
Категория
Функции обработки системных параметров


Environ

Функция Environ

Environ(Expression)
Environ$(Expression)

Функция служит для получения значений переменной среды, определенной в файлах типа autoexec.bat и msdos.sys

Возвращаемое значение

Функция возвращает значение типа String, содержащее переменную среды операционной системы

Параметры
Функция содержит именованные аргументы
Expression
Имя переменной среды. Некоторые возможные значения:
COMSPEC
Загрузчик досовской оболочки(обычно,command.com)
PATH
Пути
PROMPT
Вид курсора ввода(обычно,$P$G)
WINDIR
Каталог Windows
TEMP
Каталог для хранения временных файлов
Пример
' Определяем переменную среды PATH
Dim retval as String
retval=Environ("PATH")
Print retval
Категория
Функции обработки системных параметров


EOF

Функция EOF

EOF(FileNumber)

Функция EOF(End Of File) проверяет, достигнут ли конец файла. С помощью этой функции можно избежать ошибок, возникающих при попытках чтения или записи после достижения конца файла. Функция EOF возвращает значение False до тех пор, пока не будет достигнут конец файла. При использовании с файлами, открытыми в режиме Random или Binary, функция EOF возвращает значение True, если последней выполненной инструкции Get не удалось считать целую запись; в противном случае возвращается значение False. Для файлов, открытых для доступа в режиме Binary, попытка чтения файла с помощью функции Input до возвращения функцией EOF значения True приводит к ошибке. При чтении двоичных файлов с помощью функции Input следует вместо функции EOF использовать функции LOF и Loc или использовать с функцией EOF инструкцию Get

Возвращаемое значение

Функция возвращает значение типа Integer, содержащее логическое значение True, при достижении конца файла
Примечание При обработке файлов, открытых с помощью Output, функция EOF всегда возвращает True

Параметры
FileNumber
Обязательный аргумент типа Integer, указывающий на любой допустимый номер файла
Пример
' В данном примере функция EOF
' используется для обнаружения конца файла. Предполагается,
' что MYFILE является текстовым файлом, который содержит
' несколько строк текста
Dim InputData
 ' Открываем файл для чтения
Open "MYFILE" For Input As #1
Do While Not EOF(1)	' Достигнут ли конец файла?
    Line Input #1, InputData	' Читаем строку данных
    Debug.Print InputData	' Выводим в окно отладки
Loop
' Закрываем файл
Close #1
Категория
Функции работы с файлами


Erl

Функция Erl

Erl()

Недокументированная функция Erl(Error line) определяет локальный номер строки, в которой произошла последняя ошибка времени исполнения. Может быть полезной при отладке сложных процедур, в которых по номеру ошибки, выдаваемому объектом Err, сложно определить ее происхождение. Рекомендуется использовать в бета-версиях программ, что позволить узнать места ошибок. Для этого надо включить информацию из нее в каждый обработчик ошибок и перенумеровать все строки внутри процедур (Существуют Add-in, позволяющие перенумеровать все строки)

Возвращаемое значение

Функция возвращает значение типа Long, содержащее значение номера строки. Локальные номера строк задаются программистом. Если на строке, в которой произошла ошибка, номера не задано, функция возвращает ноль

Параметры

Функция не имеет параметров

Пример
' Пример использования функции Erl
' при попытке выполнить ошибочную операцию
' Вставьте код в General Declarations
Private Const MODULE_NAME As String = "Form1"
' Код для кнопки Command1
Private Sub Command1_Click()

On Error GoTo Error_In_Command1_Click:

1  Dim sErrorDescription As String

2  Const sProcSig = MODULE_NAME & "Command1_Click"

' Неправильный код. Кнопки Command2 не существует

3  Debug.Print Command2.Show

4  Exit Sub

' Обработчик ошибки
Error_In_Command1_Click:

5  With Err

6      sErrorDescription = "Ошибка '" & .Number & " " & _
       .Description & "' произошла в " & sProcSig & _
       IIf(Erl < > 0, " на строке " & CStr(Erl) & ".", ".")
7  End With

8  Select Case MsgBox(sErrorDescription, _
                      vbAbortRetryIgnore, _
                      App.Title & " Error")

       Case vbAbort
9      Resume Exit_Command1_Click:
10     Case vbRetry
11         Resume
12     Case vbIgnore
13         Resume Next
14     Case Else
15         End

16  End Select

Exit_Command1_Click:

End Sub
Категория
Функции обработки системных параметров


Error

Функция Error

Error[(ErrorNumber)]
Error$[(ErrorNumber)]

При анализе ошибочной ситуации по заданному номеру ошибки функция Error позволяет получать стандартный текст сообщения об ошибке без необходимости их генерации. Однако, в силу своей устаревшей природы эти сообщения не всегда совпадают с возвращаемыми значениями свойства Err.Description объекта Err
Примечание Функция Error является устаревшей и оставлена для совместимости со старыми программными кодами. Рекомендуется использовать свойство Err.Description объекта Err

Возвращаемое значение

Функция возвращает значение типа Variant(String), содержащее стандартное описание ошибки по заданному номеру

Параметры
ErrorNumber
Необязательный аргумент, содержащий номер любой доступной ошибки. Если этот номер допустим, но текст ошибки не определен, то функция Error возвращает строку Application-defined or object-defined error
Если аргумент опущен, то возвращается сообщение последней ошибки при прогоне программы. Если же при прогоне ошибки не возникает, то функция возвращает строку нулевой длины ("")
Примечание Если же значение аргумента не допустимо(превышает допустимый диапазон кодов(больше 65536), то возникает ошибка времени исполнения Overflow
Пример
' Выводим сообщения
' соответствующие номерам ошибки
Dim ErrorNumber
For ErrorNumber = 51 To 64   ' цикл по номерам 51 - 64
   Debug.Print Error(ErrorNumber)
Next ErrorNumber
Категория
Функции обработки системных параметров


Exp

Функция Exp

Exp(Number)

Функция Exp используется для вычисления числа e (основание натуральных логарифмов=2.7182818). Функция Exp является обратной к функции Log, поэтому ее иногда называют антилогарифмом

Параметры
Number
Обязательный аргумент представляет собой значение типа Double. Аргумент не может превышаеть число 709 782712893. Если аргумент не может быть оценен как число, то генерируется ошибка времени выполнения Type mismatch
Пример
Dim retval
retval=Exp(2) 'вычисляем экспоненту
Debug.Print retval
Смотри также
Log
Категория
Математические функции


FileAttr

Функция FileAttr

FileAttr(FileNumber[,ReturnType])

Функция FileAttr(File Attribute) анализирует состояние файла и выдает сообщение о режиме файла, открытого с помощью инструкции Open

Возвращаемое значение

Возвращает значение типа Long, представляющее режим файла для файлов, открытых с помощью инструкции Open, в соответствии со следующей схемой:

Input=1
Output=2
Random=4
Append=8
Binary=32

Параметры
Функция содержит именованные аргументы
FileNumber
Обязательный аргумент типа Integer, указывающий на любой допустимый номер файла
ReturnType
Необязательный аргумент типа Integer, указывающий характер возвращаемых данных. Начиная c Visual Basic версии 5, поддерживается только одно значение:1, которое параметр принимает по умолчанию. Поэтому его можно игнорировать. В 16-разрядных системах значение 2 задает возвращение дескриптора файла в операционной системе. В 32-разрядных системах значение 2 аргумента ReturnType не поддерживается и приводит к ошибке
Пример
' В данном примере функция FileAttr
' используется для определения режима файла

Dim FileNum, Mode
FileNum = 1	' Присваивает номер файла
Open "TESTFILE" For Append As FileNum	' Открывает файл
Mode = FileAttr(FileNum, 1)	' Возвращает 8 (режим Append)
Close FileNum	' Закрывает файл
Категория
Функции работы с файлами


FileDateTime

Функция FileDateTime

FileDateTime(PathName)

Функция FileDateTime позволяет узнать дату и время последней модификации файла. Перед вызовом функции есть смысл проверить существование файла с помощью функции Dir. Если файл с момента своего создания не модифицировался, время и дата последней модификации совпадают со временем и датой создания файла

Возвращаемое значение

Возвращает значение типа Variant(Date), содержащее дату и время последней модификации файла

Параметры
PathName
Обязательный аргумент типа String, содержащий имя файла(может содержать имя диска или папки). Если диск или папка не заданы, по умолчанию принимаются текущие диск и папка. Если файл не существует, генерируется ошибка времени исполнения File not found
Пример
' Узнаем  дату и время последней
' модификации файла autoecex.bat
Print FileDateTime("c:\autoexec.bat")
Категория
Функции работы с файлами


FileLen

Функция FileLen

FileLen(PathName)

Функция FileLen позволяет узнать длину файла в байтах. Перед вызовом функции есть смысл проверить существование файла с помощью функции Dir. Если в момент вызова фунции указанный файл открыт, то возвращается длина файла до его открытия. Для определения размера открытого файла используйте фукцию LOF

Возвращаемое значение

Возвращает значение типа Long, содержащее длину заданного файла

Параметры
PathName Обязательный аргумент типа String, содержащий имя файла(может содержать имя диска или папки). Если диск или папка не заданы, по умолчанию принимаются текущие диск и папка. Если файл не существует, генерируется ошибка времени исполнения File not found

Пример
' Узнаем  длину файла autoecex.bat
Print FileLen("c:\autoexec.bat")
Категория
Функции работы с файлами


Filter

Функция Filter

Filter(SourceArray, Match[, Inclule, [Compare]])

Новая функция, которая появилась в версии Visual Basic 6.0
Функция Filter отбирает в выходной массив строки входного массива в соответствии с заданным образцом(либо только содержащие вхождения заданного образца, либо только не содержащие)

Возвращаемое значение

Функция возвращает нулевой строковый массив, содержащий строки, отобранные из входного массива в соответствии с заданным образцом

Параметры
SourceArray
Обязательный аргумент - одномерный массив строк, в котором производится поиск
Match
Обязательный аргумент, содержащий поисковую строку-образец для отбора(фильтрации)
Include
Необязательный аргумент, содержащий булево значение(Boolean) и указывающий, включают или не включают возвращаемые в качестве ответа строки поисковую строку-образец. Если значение Include равно True, значит возвращаемые подстроки содержат поисковую строку-образец; если False, то результат не содержит поисковую строку-образец
Compare
Необязательный аргумент - число, указывающее на используемый вид сравнения:
vbUseCompareOption=-1
Используются установки, задаваемые оператором Option Compare. Используется по умолчанию
vbBinaryCompare=0
Двоичное сравнение. Сравнение строк производится по внутренним кодам символов, определяемых кодовой страницей. Буквы разных регистров считаются разными
vbTextCompare=1
Текстовое сравнение. Сравнение строк без учета регистра на основе системной национальной настройки
vbDatabaseCompare=2
Сравнение на основе установок, принятых в обрабатываемой базе данных. Применяется в MS Access
Пример
Категория
Функции обработки строк


Fix

Функция Fix

Fix(Number)

Функция Fix(Fixed) отбрасывает дробную часть числа и возвращает целое значение. Функция схожа с функцией Int. Различие между функциями Int и Fix состоит в том, что для отрицательного значения аргумента число функция Int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, а Fix ближайшее отрицательное целое число, большее либо равное указанному. Например, функция Int преобразует -8.4 в -9, а функция Fix преобразует -8,4 в -8.
Выражение Fix(Number) эквивалентно следующему:
Sgn(Number) * Int(Abs(Number))

Возвращаемое значение

Функция возвращает значение типа, совпадающего с типом аргумента, которое содержит целую часть числа

Параметры
Number
Обязательный аргумент Number может представлять любое допустимое числовое выражение или число типа Double. Если аргумент имеет значение Null, то возвращается также Null
Примечание Если значение аргумента не попадает в диапазон допустимых значений Double, то генерируется ошибка стадии выполнения Overflow
Если аргумент имеет тип данных String, то он должен представлять собой число, иначе генерируется ошибка стадии выполнения Type mismastch
Пример
' В данном примере показано,
' как функции Int и Fix возвращают целые части чисел.
' В случае отрицательного аргумента Int возвращает
' ближайшее отрицательное целое число,
' меньшее либо равное указанному,
' а Fix ближайшее отрицательное целое число,
' большее либо равное указанному

Dim MyNumber
MyNumber = Int(99.8)	' Возвращает 99
MyNumber = Fix(99.2)	' Возвращает 99

MyNumber = Int(-99.8)	' Возвращает -100
MyNumber = Fix(-99.8)	' Возвращает -99

MyNumber = Int(-99.2)	' Возвращает -100
MyNumber = Fix(-99.2)	' Возвращает -99
Смотри также
Int
Категория:
Математические функции


Format

Функция Format

Format (Expression[, Format[, FirstDayOfWeek[, FirstWeekOfYear]]])
Format$ (Expression[, Format[, FirstDayOfWeek[, FirstWeekOfYear]]])

Функция Format служит для форматирования выражения

Символы форматирования
Форматирование числовых и денежных величин
Форматирование логических величин
Форматирование величин дат и времени
Форматирование строковых величин

Возвращаемое значение

Возвращает значение типа Variant (String), содержащее выражение, отформатированное согласно инструкциям, заданным в описании формата

Параметры
Expression
Обязательный аргумент-любое допустимое выражение,подлежащее форматированию
Format
Необязательный аргумент-любое допустимое именованное или определяемое пользователем выражение формата.При форматировании чисел без указания аргумента Format функция Format выдает тот же результат, что и функция Str, хотя эта функция учитывает национальную настройку. Отличие состоит в том, что при преобразовании положительного числа с помощью функции Format пробел в начале строки (на месте знака числа) теряется, а при преобразовании с помощью функции Str останется
FirstDayOfWeek
Необязательный аргумент-константа, определяющая первый день недели
vbUseSystem=0
Используется значение национальных системных установок
vbSunday=1
Воскресенье(по умолчанию)
vbMonday=2
Понедельник
vbTuesday=3
Вторник
vbWednesday=4
Среда
vbThursday=5
Четверг
vbFriday=6
Пятница
vbSaturday
Суббота
FirstWeekOfYear
Необязательный аргумент-числовая константа,указывающая,какую неделю считать первой в году:
vbUseSystem=0
Используется системная информация
vbFirstJan1=1
Неделя,содержащая 1 января
vbFirstFourDays=2
Первая неделя,содержащая как минимум 4 дня нового года
vbFirstFullWeek=3
Первая полная неделя года
Категория: Функции форматирования


Функции Visual Basic:Format

 Функция Format

Форматирование числовых и денежных величин

Стандартные форматы числовых величин
Пользовательские форматы числовых величин
General Number
Отображает число без разделителей групп разрядов
A=123456.789
Print Format(A,"General Number") ' возвратит 123456.789
Currency
Отображает значение с разделителями групп разрядов (если требуется). В настройке США отображает две цифры справа от десятичного разделителя. Обозначение денежной единицы и ее положение относительно числа определяется текущей национальной настройкой
A=123456.789
Print Format(A,"Currency") ' возвратит 123 456,79р.
Fixed
Отображает по крайней мере одну цифру слева и две цифры справа от десятичного разделителя
A=123456.789
Print Format(A,"Fixed") ' возвратит 123456,79
Standard
Отображает по крайней мере одну цифру слева и две цифры справа от десятичного разделителя, а также разделители групп разрядов
A=123456.789
Print Format(A,"Standard") ' возвратит 123 456,79
Percent
Отображает число, умноженное на 100, со знаком процентов (%), добавленным справа. Всегда отображает две цифры справа от десятичного разделителя
A=1.23
Print Format(A,"Percent") ' возвратит 123,00%
Scientific
Использует стандартную экспоненциальную нотацию
A=123456.789
Print Format(A,"Scientific") ' возвратит 1,23E+00
Примечание:При форматировании стандартными форматами числа округляются,а не усекаются по стандартным правилам округления
Пользовательские форматы числовых величин

Пользовательский формат чисел(аргумент format) может содержать до четырех разделов,возможно пустых, разделенных точками с запятой(;).Каждый раздел предназначен для раздельного форматирования следующих категорий чисел:
Число разделов

1
Данный формат применяется ко всем значениям
2
Первый элемент применяется к положительным и нулевым значениям, а второй к отрицательным значениям
3
Первый элемент применяется к положительным значениям, второй к отрицательным значениям, а третий к нулевым значениям
4
Первый элемент применяется к положительным значениям, второй к отрицательным значениям, третий к нулевым значениям, а четвертый к значениям Null
Пример

' Пример формата,содержащего два раздела-первый применяется к положительным и нулевым значениям, а второй к отрицательным значениям
"$#,##0;($#,##0)"
' Если формат содержит символы точки с запятой, между которыми ничего нет, значения, соответствующие пропущенному элементу, изображаются согласно формату положительных значений. Например, следующий формат отображает положительные и отрицательные значения согласно первому элементу, а вместо нулевых значений отображает строку "Нуль"
"$#,##0;;\Н\у\л\ь"


Функции Visual Basic:Format

 Функция Format

Форматирование логических величин

Для вывода логических величин предусмотрены только стандартные форматы
Стандартные форматы логических величин
Yes/No
Отображает значение No(Нет),если число равно нулю,в противном случае отображается Yes(Да)
A=123456.789
Print Format(A,"Yes/No") ' возвратит Да
True/False
Отображает значение False(Ложь),если число равно нулю,в противном случае отображается True(Истина)
A=10
Print Format(A,"True/False") ' возвратит Истина
On/Off
Отображает значение Off(Выкл),если число равно нулю,в противном случае отображается On(Вкл)
A=10
Print Format(A,"On/Off") ' возвратит Вкл


Функции Visual Basic:Format

 Функция Format

Форматирование величин дат и времени

Стандартные форматы дат и времени
Пользовательские форматы дат и времени
General Date
Отображает дату и\или время.Если число имеет и целую, и дробную часть, то изображаются и дата, и время (например, 04.03.93 17:34); если у числа нет дробной части, то отображается только дата (например, 04.03.93); если у числа нет целой части, то отображается только время (например, 17:34). Фактическое изображение даты и времени определяется системной настройкой
A="27.07.66"
Print Format(A,"General Date") ' возвратит 27.07.66
Long Date
Отображает дату согласно длинному системному формату даты
A="27.07.66"
Print Format(A,"Long Date") ' возвратит 27 Июль 1966 г.
Medium Date
Отображает дату согласно среднему формату даты, установленному для языковой версии системы
A="27.07.66"
Print Format(A,"Medium Date") ' возвратит 27-июл-66
Short Date
Отображает дату согласно краткому системному формату даты
A="27.07.66"
Print Format(A,"Short Date") ' возвратит 27.07.66
Long Time
Отображает время согласно длинному системному формату времени: часы, минуты и секунды
A=0.25
Print Format(A,"Long Time") ' возвратит 6:00:00
Medium Time
Отображает значение времени в 12-часовом формате: часы, минуты и индикатор "AM/PM"(если есть в системных установках)
A=0.6
Print Format(A,"Medium Time") ' возвратит 02:24
Short Time
Отображает значение времени в 24-часовом формате
A=0.6
Print Format(A,"Short Time") ' возвратит 14:24
 Пользовательские форматы дат и времени
:
Разделитель компонентов времени. В некоторых национальных настройках применяется другой символ. Разделитель компонентов времени используется для разделения компонентов времени (часов, минут и секунд). Фактический символ, используемый в качестве разделителя компонентов времени, определяется текущей национальной настройкой. В России в качестве разделителя компонентов времени используется двоеточие
/
Разделитель компонентов даты. В некоторых национальный настройках применяется другой символ. Разделитель компонентов даты используется для разделения компонентов даты (дня, месяца и года). Фактический символ, используемый в качестве разделителя компонентов даты, определяется текущей национальной настройкой. В России в качестве разделителя компонентов даты используется точка
c
Отображает дату как ddddd и время как ttttt. Если у числа нет дробной части, то отображается только дата; если у числа нет целой части, то отображается только время
d
Выводит номер дня в месяце, содержащий одну или две цифры (1 – 31)
dd
Выводит номер дня в месяце, содержащий одну или две цифры (01 – 31)
ddd
Выводит сокращенное название дня недели (Пн– Вс)
dddd
Выводит полное название дня недели (Понедельник– Воскресенье)
ddddd
Отображает соответствующую числу полную дату (день, месяц и год) согласно краткому системному формату даты.Эквивалентно стандартному формату Short Date
dddddd
Отображает соответствующую числу полную дату (день, месяц и год) согласно длинному системному формату даты.Эквивалентно стандартному формату Long Date
w
Выводит номер дня недели (по умолчанию, от 1 для воскресенья до 7 для субботы),какой день считать первым определяется аргументом FirtsDayOfWeek
ww
Выводит номер недели года (1 – 54),какую недель считать первой определяется аргументом FirtsWeekOfYear
m
Выводит номер месяца, содержащий одну или две цифры (1 – 12). Если символ m следует сразу после символов h или hh, выводится число минут
mm
Выводит номер месяца, содержащий две цифры (01 – 12). Если символ m следует сразу после символов h или hh, выводится число минут
mmm
Выводит сокращенное название месяца (Янв – Дек)
mmmm
Выводит полное название месяца (Январь – Декабрь)
q
Выводит номер квартала года (1 – 4)
y
Выводит номер дня года (1 – 366)
yy
Выводит номер года, состоящий из двух цифр (00 – 99)
yyyy
Выводит номер года, состоящий из трех или четырех цифр (100 – 9999)
h
Выводит число часов, состоящее из одной или двух цифр (0 – 23)
hh
Выводит число часов, состоящее из двух цифр (00 – 23)
n
Выводит число минут, состоящее из одной или двух цифр (0 – 59)
nn
Выводит число минут, состоящее из двух цифр (00 – 59)
s
Выводит число секунд, состоящее из одной или двух цифр (0 – 59)
ss
Выводит число секунд, состоящее из двух цифр (00 – 59)
ttttt
Отображает полное время (часы, минуты и секунды) согласно текущему системному формату времени. В Microsoft Windows формат времени по умолчанию имеет вид "h:mm:ss"
AM/PM
Использует 12-часовую шкалу, добавляя прописные буквы "AM" (до полудня) или "PM" (между полуднем и полуночью)
am/pm
Использует 12-часовую шкалу, добавляя строчные буквы "am" (до полудня) или "pm" (между полуднем и полуночью)
A/P
Использует 12-часовую шкалу, добавляя прописные буквы "A" (до полудня) или "P" (между полуднем и полуночью)
a/p
Использует 12-часовую шкалу, добавляя строчные буквы "a" (до полудня) или "p" (между полуднем и полуночью)
AMPM
Использует 12-часовую шкалу, добавляя текстовую константу, добавляя текстовую константу, заменяющую в текущей системе индикаторы "AM" (до полудня) или "PM" (между полуднем и полуночью). Регистр изображаемой текстовой строки определяется соответствующими системными настройками. В Microsoft Windows по умолчанию используется формат "AM/PM"


Функции Visual Basic:Format

 Функция Format

Форматирование строковых величин

Текстовые величины не имеют стандартных форматов.Пользовательский формат строковых величин может содержать до двух разделов,возможно пустых.Разделы нумеруются слева направо и отделяются друг от друга точкой с запятой(;).Каждый раздел предназначен для раздельного форматирования непустой(1) или пустой(2) строк.
Если раздел 1 пуст,строка формата игнорируется.
Если раздел 2 не задан,то возвращается пустая строка

Символы форматирования

@
Прототип символа для вывода символа или пробела.Если форматируемая строка содержит символ в позиции,соответствующей символу @ в строке формата,то будет выведен этот символ,в противном случае выводится пробел.Строка формата заполняется справа налево, если в ней нет символа (!):
Пример

' возвращается Русский Проект
Print "Русский" & Format("Проект","@@@@@@@")
&
Прототип символа. Выводит символ или не выводит ничего.. Если форматируемая строка содержит символ в позиции, соответствующей символу (&) в строке формата, то в данной позиции будет выведен этот символ; в противном случае данная позиция останется пустой. Строка формата заполняется справа налево, если в ней нет символа (!)
<
Символ нижнего регистра. Преобразует все символы к нижнему регистру
>
Символ верхнего регистра. Преобразует все символы к нижнему регистру
!
Заполнение строки формата слева направо. По умолчанию строка формата заполняется справа налево
Пример

' возвращается Проект  Проект(с двумя пробелами)
Print "Format("Проект","@@@@@@@@!") "Проект"


FormatCurrency

Функция FormatCurrency

FormatCurrency(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit,[UseParensForNegativeNumbers[,GroupDigits]]]])

Новая функция,которая появилась в Visual Basic 6.0
Служит для форматирования числовых выражений,представляющих денежные суммы.Эта функция была введена в качестве альтернативы громоздкой функции Format.Используйте функцию FormatCurrency в силу ее большей читабельности

Возвращаемое значение

Возвращает строковое выражение, отформатированное в виде денежного значения с применением символа валюты, заданного в системной панели управления

Параметры
Часть | Описание
Expression | Обязательный. Форматируемое выражение
NumDigitsAfterDecimal | Необязательный. Числовое значение, задающее число знаков, отображаемых в правой части десятичной дроби. Значением по умолчанию, указывающим, что применяются национальные установки компьютера, является –1
IncludeLeadingDigit | Необязательный. Константа с тремя значениями, которая задает наличие или отсутствие начального нуля при отображении дробных значений. См. значения в разделе «Установки»
UseParensForNegativeNumbers | Необязательный. Константа с тремя значениями, которая указывает, надо ли заключать в круглые скобки отрицательные значения. См. значения в разделе «Установки»
GroupDigits | Необязательный. Константа с тремя значениями, указывающая на необходимость группирования цифр с применением разделителя групп, заданного в национальных установках компьютера. См. значения в разделе «Установки»

Установки

Параметры IncludeLeadingDigit, UseParensForNegativeNumbers и GroupDigits имеют следующие установки:

Константа | Значение | Описание
TristateTrue | –1 | True
TristateFalse | 0 | False
TristateUseDefault | –2 | Применяется установка, соответствующая национальным установкам для компьютера

Примечания

При пропуске одного или нескольких необязательных параметров значения для них присваиваются в соответствии с национальными установками компьютера

Расположение символа валюты по отношению к денежному значению определяется национальными установками для системы

Замечание Все сведения об установках содержатся на закладке Regional Settings Currency, за исключением вводного нуля, информация о котором находится на закладке Number
Пример
' В данном примере функция FormatCurrency
' используется для форматирования числа 100
Print FormatCurrency(100) 'возвращает 100.00р.
Категория
Функции форматирования


FormatDateTime

Функция FormatDateTime

FormatDateTime(Date[,NamedFormat])

Новая функция, которая появилась в Visual Basic 6.0
Служит для форматирования величин дат и времени

Возвращаемое значение

Возвращает строковое выражение, отформатированное в виде даты и времени

Параметры
Часть | Описание
Date | Обязательный. Форматируемое выражение для даты и времени
NamedFormat | Необязательный. Числовое выражение, указывающее используемый формат для даты и времени. Если параметр опущен, применяется формат, задаваемый константой vbGeneralDate

Установки

Для параметра NamedFormat используются следующие установки:

Константа | Значение | Описание
vbGeneralDate | 0 | Отображаются дата и/или время. При наличии области даты она отображается в коротком формате для даты. Если присутствует часть, относящаяся к времени, то время отображается в длинном формате для времени. При наличии обеих частей – производится их отображение
vbLongDate | 1 | Отображается дата с использованием длинного формата для даты, заданного национальными установками компьютера
vbShortDate | 2 | Отображается дата с использованием короткого формата для даты, заданного национальными установками компьютера
vbLongTime | 3 | Отображается время с использованием формата для времени, заданного национальными установками компьютера
vbShortTime | 4 | Отображается время с использованием 24-часового формата (hh:mm)

Пример

' В данном примере функция FormatDateTime
' используется для форматирования даты
Print FormatDateTime(1) 'возвращает 31.12.1899
Категория
Функции форматирования


FormatNumber

Функция FormatNumber

FormatNumber(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])

Новая функция,которая появилась в Visual Basic 6.0
Служит для форматирования числовых выражений.Эта функция была введена в качестве альтернативы громоздкой функции Format.Используйте функцию FormatNumber в силу ее большей читабельности

Возвращаемое значение

Возвращает значение типа String,содержащее отформатированное числовое выражение

Параметры
Часть | Описание
Expression | Обязательный. Форматируемое выражение
NumDigitsAfterDecimal | Необязательный. Числовое значение, задающее число знаков, отображаемых в правой части десятичной дроби. Значением по умолчанию, указывающим, что применяются национальные установки компьютера, является –1
IncludeLeadingDigit | Необязательный. Константа с тремя значениями, которая задает наличие или отсутствие начального нуля при отображении дробных значений. См. значения в разделе «Установки»
UseParensForNegativeNumbers | Необязательный. Константа с тремя значениями, которая указывает, надо ли заключать в круглые скобки отрицательные значения. См. значения в разделе «Установки»
GroupDigits | Необязательный. Константа с тремя значениями, указывающая на необходимость группирования цифр с применением разделителя групп, заданного в национальных установках компьютера. См. значения в разделе «Установки»

Установки

Для параметров IncludeLeadingDigit, UseParensForNegativeNumbers и GroupDigits используются следующие установки:

Константа | Значение | Описание
TristateTrue | –1 | True
TristateFalse | 0 | False
TristateUseDefault | –2 | Применяется установка, соответствующая национальным установкам для компьютера

Примечания

При пропуске одного или нескольких необязательных параметров значения для них присваиваются в соответствии с национальными установками компьютера

Замечание Все сведения об установках содержатся на закладке Regional Settings Number

Пример

' В данном примере функция FormatNumber
' используется для форматирования числа 100
Print FormatNumber(100) 'возвращает 100,00
Категория
Функции форматирования


FormatCurrency

Функция FormatPercent

FormatPercent(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])

Новая функция,которая появилась в Visual Basic 6.0
Служит для форматирования числовых выражений в процентном формате.Эта функция была введена в качестве альтернативы громоздкой функции Format.Используйте функцию FormatPercent в силу ее большей читабельности

Возвращаемое значение

Возвращает число, отформатированное в виде процентного отношения (умноженное на 100), с последующим символом %

Параметры
Часть | Описание
выражение | Обязательный. Форматируемое выражение
NumDigitsAfterDecimal | Необязательный. Числовое значение, задающее число знаков, отображаемых в правой части десятичной дроби. Значением по умолчанию, указывающим, что применяются национальные установки компьютера, является –1
IncludeLeadingDigit | Необязательный. Константа с тремя значениями, которая задает наличие или отсутствие начального нуля при отображении дробных значений. См. значения в разделе «Установки»
UseParensForNegativeNumbers | Необязательный. Константа с тремя значениями, которая указывает, надо ли заключать в круглые скобки отрицательные значения. См. значения в разделе «Установки»
GroupDigits | Необязательный. Константа с тремя значениями, указывающая на необходимость группирования цифр с применением разделителя групп, заданного в национальных установках компьютера. См. значения в разделе «Установки»

Установки

Аргументы IncludeLeadingDigit, UseParensForNegativeNumbers и GroupDigits имеют следующие установки

Константа | Значение | Описание
TristateTrue | –1 | True
TristateFalse | 0 | False
TristateUseDefault | –2 | Применяется установка, соответствующая национальным установкам для компьютера

Примечания

При пропуске одного или нескольких необязательных параметров значения для них присваиваются в соответствии с национальными установками компьютера

Замечание Все сведения об установках содержатся на закладке Regional Settings Number
Пример
' В данном примере функция FormatPercent
' используется для форматирования числа 50
Print FormatPercent(50) 'возвращает 500,00%
Категория
Функции форматирования


FreeFile

Функция FreeFile

FreeFile([RangeNumber])

Функция FreeFile используется для возвращения незанятого номера(не задействованного для открытия другого файла) файла, который можно использовать при открытии файла инструкцией Open. Рекомендуется всегда использовать эту функцию при открытии файла во избежание различных проблем

Возвращаемое значение

Возвращает значение типа Integer в диапазоне от 1 до 511, представляющее следующий номер файла, доступный для использования с инструкцией Open

Параметры
RangeNumber
Необязательный аргумент типа Variant, указывающим диапазон, из которого возвращается следующий свободный номер файла. Значение 0 (используется по умолчанию) задает возвращение номера файла из диапазона 1 – 255 включительно. Значение 1 задает возвращение номера файла из диапазона 256 – 511
Пример
' Используем функцию FreeFile
' для определения следующего свободного номера файла
' В цикле последовательно открываются для вывода данных
' пять файлов, в каждый из которых записываются
' некоторые данные
Dim MyIndex, FileNumber
For MyIndex = 1 To 5	' Выполняет цикл 5 раз
  FileNumber = FreeFile	' Определяем свободный номер файла
' Создаем файл
  Open "TEST" & MyIndex For Output As #FileNumber
  Write #FileNumber, "Пример."  ' выводим текст
  Close #FileNumber ' закрываем файл
Next MyIndex
Категория
Функции работы с файлами


FV

Функция FV

FV(Rate, NPer, Pmt[, PV[, Due]])

Функция FV используется для вычисления конечного результата платежей для моделеи регулярных накоплений\выплат.Функция подходит для расчета выплат по закладной (например за дом) или итогов накоплений при ежемесячных банковских взносах

Возвращаемое значение

Возвращает значение типа Double, указывающее будущее значение суммы регулярных платежей при заданной учетной ставке

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double, указывающее учетную ставку за период. Например, при выплате займа на приобретение автомобиля из расчета 10 процентов годовых, ежемесячная ставка составит 0 1/12, т.е. 0,0083
NPer | Обязательный аргумент типа Integer, указывающее полное число периодов (выплат) за рассматриваемый срок. Например, если заем на приобретение автомобиля взят на четыре года, число месячных периодов (количество выплат) составит 4 * 12 (48)
Pmt | Обязательный аргумент типа Double, указывающее размер выплат за период. Каждый платеж включает как собственно возвращаемую сумму, так и проценты, которые не изменяются от одного платежа к другому
PV | Необязательный аргумент - выражение типа Variant, указывающее величину суммы на текущий момент. Например, при займе на покупку автомобиля, сумма займа является текущим значением при расчете будущих платежей. Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный аргумент - Выражение типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0

Примечание

Аргументы Rate и NPer должны задаваться в расчете на одну и ту же единицу времени. Например, если ставка Rate исчисляется за месяц, то и число периодов(выплат) NPer также следует указать в месяцах.
Для всех аргументов выплаченные суммы (депозитные вклады и т.п.) представляются отрицательными значениями; а полученные (дивиденды) положительными

Пример
' В данном примере функция FV
' используется для вычисления суммы накоплений.
' В качестве исходных значений при расчете
' используется процентная ставка,
' возрастающая за определенный период (APR / 12),
' число выплат (TotPmts), размер платежа (Payment),
' текущий объем накоплений (PVal), а также
' режим выплат (PayType),т.е. число, определяющее,
' производятся платежи в начале или в конце периода.
' Так как Payment определяет выплачиваемые суммы,
' этой величине присваивается знак "минус"

Dim Fmt, Payment, APR, TotPmts, PayType, PVal, FVal
Const ENDPERIOD = 0, BEGINPERIOD = 1 ' Режим выплат
Fmt = "###,###,##0.00" ' Денежный формат
Payment = InputBox("Сколько предполагается вносить в месяц?")
APR = InputBox("Какова ожидаемая годовая учетная ставка?")
If APR > 1 Then APR = APR / 100	' Правильная форма
TotPmts = InputBox("Сколько месяцев вы будете вносить платежи?")
PayType = MsgBox("Платежи вносятся в конце месяца?", vbYesNo)
If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD

PVal = InputBox("Сколько денег имеется на счету сейчас?")
FVal = FV(APR / 12, TotPmts, -Payment, -PVal, PayType)
MsgBox "Будущий объем накоплений: " & Format(FVal, Fmt) & "."
Категория
Финансовые функции


GetAllSettings

Функция GetAllSettings

GetAllSettings(Appname,Section)

Возвращаемое значение

Возвращает список записей и их значений (созданных с помощью инструкции SaveSetting) из раздела HKEY_CURRENT_USER\Software\VB and VBA Program Settings, соответствующего приложению,в реестре Windows. Функция GetAllSettings возвращает неинициализированное значение типа Variant, если хотя бы в одном из аргументов Appname или Section указано несуществующее значение. Поскольку функция возвращает значения в текстовом виде(субтип String), то значения записей, содержащих числа, перед применением следует явно преобразовать в числовой тип

Параметры
Функция содержит именованные аргументы
Appname
Обязательный аргумент - строковое выражение, содержащее имя приложения или проекта, для которого определяются записи
Section
Обязательный аргумент - строковое выражение, содержащее имя раздела, для которого определяются записи. Функция GetAllSettings возвращает значение типа Variant, содержащее двумерный массив строк со всеми записями указанного раздела и их значениями
Пример
' В данном примере сначала с помощью
' оператора SaveSetting заполняются элементы реестра
' Windows для приложения, указанного в параметре
' Appname, а затем значения записей выводятся
' с помощью функции GetAllSettings.
' Отметим, что функция GetAllSettings не возвращает
' имена приложений и имена разделов, указанных в
' параметре Section
' Описываем переменную типа Variant, в которую будет записан двумерный
' массив,возвращаемый функцией GetAllSettings
' Описываем счетчик с типом Integer
Dim MySettings As Variant, intSettings As Integer
' Заполняем реестр
SaveSetting appname := "MyApp", section := "Startup", _
key := "Top", setting := 75
SaveSetting "MyApp","Startup", "Left", 50
' Удаление установок
MySettings = GetAllSettings(appname := "MyApp", section := "Startup")
   For intSettings = LBound(MySettings, 1) To UBound(MySettings, 1)
      Debug.Print MySettings(intSettings, 0), MySettings(intSettings, 1)
   Next intSettings
DeleteSetting "MyApp", "Startup"
Смотри также
GetSetting
Категория
Функции обработки системных параметров


GetAttr

Функция GetAttr

GetAttr(Pathname)

Функция служит для определения атрибутов заданного файла.Функция может работать и с открытыми файлами

Возвращаемое значение

Возвращает значение типа Integer, содержащее атрибуты файла, каталога или папки

Параметры
Pathname
Обязательный параметр-строковое выражение,указывающее имя файла.Pathname может содержать имя каталога или папки и диска,включая сетевые.Он может также задаваться как UNC-имя.Если диск и папка не указана,то система считает,что файл находится в рабочем каталоге на рабочем диске машины.При этом имя файла задается как "C:Test.txt(без обратной косой черты)

Значение, возвращаемое функцией GetAttr, являются суммой значений следующих атрибутов:

Константа | Значение | Описание
vbNormal | 0 | Обычный
vbReadOnly | 1 | Доступен только для чтения
vbHidden | 2 | Скрытый
vbSystem | 4 | Системный файл
vbDirectory | 16 | Каталог или папка
vbArchive | 32 | Файл был изменен после последнего резервирования

Примечание:При отсутствии файла генерируется ошибка времени исполнения File not found

Пример

' В данном примере функция GetAttr
' используется для определения атрибутов файла,
' а также каталога или папки
Dim MyAttr
' Предположим, что файл TESTFILE имеет атрибут "скрытый"
MyAttr = GetAttr("TESTFILE")   ' возвращает 2

' Возвращает ненулевое значение, если файл TESTFILE ' имеет атрибуты "скрытый" и "только для чтения"
Debug.Print MyAttr And vbHidden

' Предположим, что файл TESTFILE
' имеет атрибуты "скрытый" и "только для чтения"
MyAttr = GetAttr("TESTFILE")   ' возвращает 3

' Возвращает ненулевое значение, если файл TESTFILE
' имеет атрибуты "скрытый" и "только для чтения"
Debug.Print MyAttr And (vbHidden + vbReadOnly)

' Предположим, что MYDIR является каталогом или папкой
MyAttr = GetAttr("MYDIR")   ' возвращает 16
Категория
Функции работы с файлами


GetAutoServerSettings

Функция GetAutoServerSettings

object.GetAutoServerSettings([Progid], [CLSID])

Возвращает информацию о состоянии регистрации компонента ActiveX

Параметры
Object
Обязательный параметр - объектное выражение, которое определяет объект в списке «Применяется к»
Progid
Необязательный параметр - выражение типа Variant, указывающее ProgID для компонента
CLSID
Необязательный параметр - выражение типа Variant, указывающее CLSID для компонента
Возвращаемое значение

Функция GetAutoServerSettings возвращает результат типа Variant, который содержит массив значений, описывающих данный компонент ActiveX. Значения индексов и их описание:

Значение | Описание
1 | True, если компонент ActiveX зарегистрирован как удаленный
2 | Имя удаленной машины
3 | Имя сетевого протокола RPC
4 | Уровень идентификации RPC

Примечания

Если значение отсутствует или недоступно, то значением будет пустая строка. При возникновении ошибки во время выполнения метода будет возвращено значение Empty типа Variant

Пример
' Пример демонстрирует предоставление
' информации об удаленной регистрации объекта
' под именем «Hello»

Sub ViewHello()
   Dim oRegClass As New RegClass
   Dim vRC As Variant
   vRC = oRegClass.GetAutoServerSettings _
  ("HelloProj.HelloClass")
   If Not(IsEmpty(vRC)) Then
      If vRC(1) Then
         MsgBox "Hello зарегистрирован как удаленный на сервере: " & vRC(1)
      Else
         MsgBox "Hello зарегистрирован локально"
      End If
   End if
End Sub
Категория
Функции работы с объектами


GetObject

Функция GetObject

GetObject([Pathname] [Class])

Возвращает ссылку на объект, обеспечиваемый компонентом ActiveX

Параметры
Функция содержит именованные аргументы
Pathname | Необязательный аргумент-значение типа Variant(String). Полная спецификация пути и имя файла, содержащего отыскиваемый объект. В случае, если аргумент опущен, параметр Class является обязательным
Class | Необязательный аргумент-значение типа Variant(String).Строка, отражающая класс объекта

Параметр Class имеет синтаксис appname.objecttype, в котором присутствуют следующие элементы:

Appname | Обязательный. Значение типа Variant(String). Имя приложения, предоставляющего объект
ObjectType | Обязательный. Значение типа Variant(String). Tип или класс создаваемого объекта

Примечания

Функция GetObject применяется для доступа в объекту ActiveX, находящемуся в файле, и для присваивания этого объекта объектной переменной. Для присваивания объекта, возвращенного функцией GetObject, объектной переменной используется оператор Set. Например:

Dim CADObject As Object
Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")

При исполнении данного кода производится запуск приложения, указанного параметром pathname, и активизация объекта в заданном файле.

Если значением параметра pathname является пустая строка (""), функция GetObject возвращает новый экземпляр объекта заданного типа. В случае, если параметр pathname опущен, функция GetObject возвращает активный в данный момент объект заданного типа. Если объекта указанного типа не существует, возникает ошибка.

Ряд приложений допускают активизацию части файла. Для этого нужно добавить после имени файла восклицательный знак (!) и поместить вслед за ним строку, задающую ту часть файла, которую требуется активизировать. Дополнительные сведения относительно составления такой строки смотрите в документации на то приложение, которое создает объект.

К примеру, в графическом приложении может присутствовать несколько уровней рисования, хранящихся в файле. Для активизации уровня под названием SCHEMA.CAD можно воспользоваться следующим кодом:

Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")

В тех случаях, когда не указан класс объекта (параметр class), автоматизация (Automation) находит приложение, которое нужно запустить, на основе заданного имени файла. Однако ряд файлов могут поддерживать несколько классов объектов. Например, приложение для рисования может поддерживать три различных типа объектов: объект Application, объект Drawing и объект Toolbar, которые являются частью одного файла. Для указания требуемого объекта нужно указать необязательный параметр class. Например:

Dim MyObject As Object
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING")

В приведенном примере FIGMENT – это имя графического приложения, а DRAWING – один из поддерживаемых этим приложением типов объектов.

После активизации объекта, производится ссылка на него в коде с использованием определенной объектной переменной,. В предыдущем примере доступ к свойствам и методам нового объекта осуществляется с помощью объектной переменной MyObject. Например:

MyObject.Line 9, 90
MyObject.InsertText 9, 100, "Hello, world."
MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW"
Замечание Функцию GetObject полезно использовать в тех случаях, когда уже имеется текущий экземпляр объекта, или при необходимости создать объект из уже загруженного файла. Если же текущий экземпляр объекта отсутствует и нежелательно запускать объект из загруженного файла, применяется функция CreateObject.

Если объект производит само регистрацию в качестве объекта с единственным экземпляром, то, независимо от числа обращений к функции CreateObject, будет создан только один экземпляр такого объекта. В случае наличия только одного экземпляра объекта, функция GetObject, при ее вызове с использованием синтаксиса с указанием пустой строки (""), всегда возвращает один и тот же экземпляр, а при отсутствии параметра pathname возникает ошибка. Функцию GetObject можно применять для получения ссылки на класс, созданный в Visual Basic.

Пример
'Пример использования функции GetObject
' В данном примере функция GetObject создает ссылку
' на конкретный лист (MyXL) в Microsoft Excel.
' Для того, чтобы сделать Microsoft Excel видимым,
'закрыть его и т. д., используется свойство
' Application рабочего листа.
' С помощью двух вызовов API процедура
' Sub DetectExcel ищет Microsoft Excel и,
' если он выполняется, вводит его в таблицу выполняемых
' объектов (Running Object Table).
' Первый вызов GetObject приводит к ошибке,
' если Microsoft Excel еще не запущен.
' В этой программе ошибка приводит к установке значения True для флага ExcelWasNotRunning.
' Второй вызов GetObject указывает открываемый
' файл. Если Microsoft Excel не был запущен, то в
' результате второго вызова функции это приложение
' запускается, при этом возвращается ссылка на лист,
' соответствующий указанному файлу. Файл mytest.xls
' должен существовать в указанном каталоге; в противном ' случае возникает ошибка Visual Basic «Automation error»
' (Ошибка автоматизации). Далее в программе делаются
' видимыми окно Microsoft Excel и окно, содержащее
' указанный лист. И наконец, если Microsoft Excel
' не выполнялся при запуске этой программы,
' метод Quit объекта Application
' закрывает Microsoft Excel. Если это приложение
' выполнялось до запуска данной программы, попытка
' закрыть его не предпринимается. Ссылка на лист
' освобождается путем установки ее значения в Nothing
' Описываем необходимые процедуры API:
Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName as String, _
               ByVal lpWindowName As Long) As Long

Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hWnd as Long,ByVal wMsg as Long, _
               ByVal wParam as Long, _
               ByVal lParam As Long) As Long

Sub GetExcel()
   Dim MyXL As Object   ' Переменная для сохранения
                        ' ссылки на Microsoft Excel
   Dim ExcelWasNotRunning As Boolean   ' Флаг для окончательного освобождения.

' Проверка, выполняется ли Microsoft Excel
   On Error Resume Next   ' Отложенный перехват ошибок.
' Функция GetObject, вызванная без указания первого параметра,
' возвращает ссылку на экземпляр приложения. Если приложение
' не запущено, возвращается ошибка
   Set MyXL = Getobject(, "Excel.Application")
   If Err.Number <> 0 Then ExcelWasNotRunning = True
   Err.Clear   ' Очищаем объект Err на случай ошибки.

' Проверка Microsoft Excel. Если Microsoft Excel выполняется,
' он вводится в таблицу выполняемых объектов (Running Object table)
   DetectExcel

' Задаем в объектной переменной ссылку на открываемый файл
   Set MyXL = Getobject("c:\vb4\MYTEST.XLS")

' Делаем видимым Microsoft Excel с помощью его свойства Application.
' Делаем видимым окно, содержащее файл, с помощью
' коллекции Windows, задаваемой объектной ссылкой MyXL
   MyXL.Application.Visible = True
   MyXL.Parent.Windows(1).Visible = True
    Do manipulations of your  file here.
   ' ...
' Если этот экземпляр Microsoft Excel не выполнялся при запуске данной
' программы, закрываем его с помощью метода Quit свойства Application.
' Отметим, что при попытке выхода из Microsoft Excel
' появляется мерцание строки заголовка и отображается сообщение, запрашивающее вас
' о необходимости сохранения файлов
   If ExcelWasNotRunning = True Then
      MyXL.Application.Quit
   End IF

   Set MyXL = Nothing   ' Освобождаем ссылку на
                        ' приложение и электронную таблицу
End Sub

Sub DetectExcel()
' Процедура находит выполняемый Excel и регистрирует его
   Const WM_USER = 1024
   Dim hWnd As Long
' Если Excel выполняется, этот вызов API возвращает его дескриптор
   hWnd = FindWindow("XLMAIN", 0)
   If hWnd = 0 Then   ' 0 означает, что Excel не выполняется
      Exit Sub
   Else
   ' Excel выполняется, поэтому используйте
   функцию API SendMessage, чтобы ввести его в таблицу выполняемых объектов (Running Object Table)
      SendMessage hWnd, WM_USER + 18, 0, 0
   End If
End Sub
Категория
Функции работы с объектами


GetSetting

Функция GetSetting

GetSetting(AppName,Section,Key[,Default])

Используется для получения значения записи из раздела реестра HKEY_CURRENT_USER\Software\VB and VBA Program Settings

Возвращаемое значение

Возвращает строку(String), содержащую значение заданной записи

Параметры

Функция содержит именованные аргументы
AppName | Обязательный аргумент - строка, содержащая имя приложения или проекта, записи для которого требуются
Section | Обязательный аргумент - строка, содержащая имя раздела, в котором находится запись
Key | Обязательный аргумент - строка, содержащая имя возвращаемой записи
Default | Необязательный аргумент - выражение, содержащее значение, возвращаемое в том случае, если значение записи не задано. Если параметр Default не определен, то подразумевается пустая строка ("")

Примечание

Если в любом из параметров указано несуществующее значение, функция GetSetting возвращает значение параметра Default

Пример
' Пример использования функции GetSetting
' В данном примере сначала с помощью оператора
' SaveSetting вносим в реестр заданное значение,
' а затем эта запись
' выводится с помощью функции GetSetting
' Поскольку параметр default определен,
' обязательно будет возвращено некоторое значение

' Заполняем реестр
SaveSetting "MyApp","Startup", "Left", 50

Debug.Print GetSetting(appname := "MyApp", section := "Startup", _
                       key := "Left", default := "25")
Смотри также
GetAllSettings
Категория
Функции обработки системных параметров


Hex

Функция Hex

Hex(Number)
Hex$(Number)

Функция Hex(Hexadecimal) преобразует аргумент в шестнадцатеричное представление числа. Для явного представления шестнадцатеричного числа без вызова функции следует применять символы &H перед числом(например, &H10 - это десятичное число 16 в шестнадцатеричном представлении)

Возвращаемое значение

Возвращает значение субтипа String типа Variant

Параметры
Number
Обязательный аргумент типа String, представляющий число в диапазоне значений Long или любое допустимое числовое значение. Дробная часть Number автоматически округляется до ближайшего целого перед преобразованием
Если аргумент не попадает в диапазон допустимых значений, генерируется ошибка стадии выполнения Overflow
Если аргумент имеет тип данных String, он должен представлять число, иначе генерируется ошибка времени исполнения Type mismatch
Пример
' Вычисляем шестадцатеричное представление числа 10
Print Hex(10)' возвращает A
Смотри также
Oct
Категория
Функции преобразования чисел в разные системы счисления


Hour

Функция Hour

Hour(Time)

Функция Hour используется для получения значения часов из выражения времени. Вне зависимости от формата выражения времени аргумента и системных установок функция Hour всегда возвращает время в 24-часовом формате

Возвращаемое значение

Возвращает значение типа Variant(Integer) от 0 до 23, которое представляет часы в значении времени

Параметры
Time
Обязательный аргумент - любое значение типа Variant, числовым выражением, строковым выражением или любым их сочетанием, которое представляет значение времени. Если время содержит значение Null, возвращается значение Null
Пример
' Определяем час,
' соответствующий указанному времени

Dim MyTime, MyHour
MyTime = #4:35:17 PM# ' присваиваем время
MyHour = Hour(MyTime) ' MyHour содержит 16
Print MyHour
Смотри также
Minute,Second
Категория
Функции дат и времени


IIf

Функция IIf

IIf(Expression, TruePart, FalsePart)

Служит для возвращения одного из двух заданнных выражений в зависимости от значения логичесого выражения(условия)

Возвращаемое значение

Возвращает значение выражения TruePart или FalsePart с типом данных Variant с субтипом возвращаемого значения

Параметры
Функция содержит именованные аргументы
Элемент | Описание
Expression | Обязательный. Проверяемое выражение
TruePart | Обязательный. Значение или выражение, возвращаемое, если параметр Expression имеет значение True
FalsePart | Обязательный. Значение или выражение, возвращаемое, если параметр Expression имеет значение False

Примечание

Функция IIf оценивает оба выражения (TruePart и FalsePart), несмотря на то, что возвращается только одно из них. В некоторых случаях это приводит к нежелательным побочным эффектам. Например, если при вычислении выражения FalsePart имеет место деление на нуль, то возникнет ошибка, даже если значение параметра Expression равняется True
В MSDN и в Help для Visual Basic 5 первый аргумент имеет неправильное название expr вместо Expression.Поэтому при использовании именнованных аргументов IIf(expr:=...) возникнет ошибка

Пример
' Выбираем одно из двух выражений
Dim mysite As String, anysite As String, retval As String
mysite = "Русский_Проект"
anysite = mysite
retval = IIf(anysite = mysite, "- отличный сайт", "- так себе")
Print mysite & retval
Категория
Функции загрузки данных


IMEStatus

Функция IMEStatus

IMEStatus[( )]

Используется для получения состояния редактора входного метода(IME), используемого в восточно-азиатских версиях

Возвращаемое значение

Функция возвращает значение типа Integer, указывающее текущий режим редактора IME (Input Method Editor) Microsoft Windows. Применяется только в восточно-азиатских версиях

Возвращаемые значения для японской национальной установки:

Константа | Значение | Описание
vbIMEModeNoControl | 0 | Управление IME отсутствует (по умолчанию)
vbIMEModeOn | 1 | IME включен
vbIMEModeOff | 2 | IME отключен
vbIMEModeDisable | 3 | IME недоступен
vbIMEModeHiragana | 4 | Режим Hiragana с полной шириной
vbIMEModeKatakana | 5 | Режим Katakana с полной шириной
vbIMEModeKatakanaHalf | 6 | Режим Katakana с половинной шириной
vbIMEModeAlphaFull | 7 | Алфавитно-цифровой режим с полной шириной
vbIMEModeAlpha | 8 | Алфавитно-цифровой режим с половинной шириной

Возвращаемые значения для корейской национальной установки:

Константа | Значение | Описание
vbIMEModeNoControl | 0 | Управление IME отсутствует (по умолчанию)
vbIMEModeAlphaFull | 7 | Алфавитно-цифровой режим с полной шириной
vbIMEModeAlpha | 8 | Алфавитно-цифровой режим с половинной шириной
vbIMEModeHangulFull | 9 | Режим Hangul с полной шириной
vbIMEModeHangul | 10 | Режим Hangul с половинной шириной

Возвращаемые значения для китайской национальной установки:

Константа | Значение | Описание
vbIMEModeNoControl | 0 | Управление IME отсутствует (по умолчанию)
vbIMEModeOn | 1 | IME включен
vbIMEModeOff | 2 | IME отключен

Категория
Функции обработки системных параметров


Input

Функция Input

Input(Number, [#]FileNumber)
Input$(Number, [#]FileNumber)
InputB(Number, [#]FileNumber)
InputB$(Number, [#]FileNumber)

Служит для чтения символьных или байтовых данных из файла, открытого инструкцией Open в режиме текстового ввода или бинарного доступа

Возвращаемое значение

Возвращает значение типа String, содержащее символы или байты из файла, открытого в режиме Input или Binary

Параметры
Часть | Описание
Number | Обязательный. Любое действительное числовое выражение, указывающее число возвращаемых символов или байтов
FileNumber | Обязательный. Любой действительный номер файла

Примечания

Данные, считываемые с помощью функции Input, обычно записываются в файл с использованием оператора Print # или Put. Эта функция применима только к файлам, открытым в режиме Input или Binary

В отличие от оператора Input #, функция Input возвращает все считанные символы, в том числе запятые, символы возврата каретки, символы перевода строки, кавычки и начальные пробелы

Для файлов, открытых для доступа в режиме Binary, попытка чтения файла с помощью функции Input при возвращении функцией EOF значения True, приводит к ошибке. При чтении двоичных файлов с помощью функции Input следует вместо функции EOF использовать функции LOF и Loc или применять с функцией EOF оператор Get

Замечание Для байтовых данных, содержащихся в текстовых файлах, пользуйтесь функцией InputB. В этом случае параметр Number указывает число байт (а не символов), которые следует вернуть

Пример
' В данном примере функция Input
' применяется для последовательного чтения символов
' из файла и вывода их в окно Immediate
' Предполагается, что текстовый файл TESTFILE существует
' и содержит несколько строк данных для примера
Dim MyChar
Open "TESTFILE" For Input As #1   ' открываем файл
Do While Not EOF(1)   ' цикл до конца файла
   MyChar = Input(1, #1)   ' читаем один символ
   Debug.Print MyChar   ' выводим в окно Immediate
Loop
Close #1   ' закрываем файл
Категория
Функции работы с файлами


InputBox

Функция InputBox

InputBox(Prompt[,Title] [,Default] [,XPos] [,YPos] [,HelpFile,Context])

Функция выводит на экран диалоговое(модальное) окно с кнопкой закрытия, содержащее заданное сообщение, поле ввода, кнопки OK, Cancel и опционально заголовок и/или кнопку Help, ожидая от пользователя ввода текста или щелчка кнопки. При задании не только одного первого параметра, необходимо использовать функцию InputBox в выражении. Для пропуска некоторых параметров нужно включить соответствующие разделители в виде запятых

Возвращаемое значение

Возвращает значение типа String, включающее содержимое окна текста

Параметры
Функция содержит именованные аргументы
Часть | Описание
Prompt | Обязательный. Строковое выражение, отображаемое как сообщение в диалоговом окне. Максимальная длина параметра Prompt составляет приблизительно 1024 символа и зависит от ширины используемых символов. Строковое значение Prompt может содержать нескольких физических строк. Для разделения строк допускается использование символа возврата каретки, символа перевода строки или комбинации этих символов
Title | Необязательный. Строковое выражение, отображаемое в строке заголовка диалогового окна. Если этот параметр опущен, в строку заголовка помещается имя приложения. Максимальное число символов заголовка около 50
Default | Необязательный. Строковое выражение, отображаемое в окне текста как ответ, используемый по умолчанию, если пользователь не введет другую строку. Если этот параметр опущен, окно текста отображается пустым
XPos | Необязательный. Числовое выражение, задающее расстояние по горизонтали между левой границей диалогового окна и левым краем экрана (в твипах). Если этот параметр опущен, то диалоговое окно выравнивается по центру экрана по горизонтали
YPos | Необязательный. Числовое выражение, задающее расстояние по вертикали между верхней границей диалогового окна и верхним краем экрана (в твипах). Если этот параметр опущен, то диалоговое окно помещается по вертикали на расстоянии примерно на одну треть высоты экрана
HelpFile | Необязательный. Строковое выражение, определяющее имя файла Справки, содержащего контекстно-зависимую Справку о данном диалоговом окне. Если этот параметр указан, то необходимо задать также и параметр Context
Context | Необязательный. Числовое выражение, определяющее номер соответствующего раздела справочной системы. Если этот параметр указан, то необходимо задать также и параметр HelpFile

Примечание

Если указаны оба параметра, HelpFile и Context, то пользователь имеет возможность нажатием клавиши F1 вызвать соответствующую контекстную справку. Некоторые главные приложения, например, Microsoft Excel, также автоматически добавляют в диалоговое окно кнопку «Справка». Если пользователь щелкает кнопку OK или нажимает ENTER, функция InputBox возвращает содержимое поля ввода. Если пользователь щелкает кнопку Cancel, то функция возвращает пустую строку (« »)
Замечание: Однако, если пользователь не введет в поле ввода строку, то функция тоже вернет пустую строку. В этом случае будет затруднительно определить - какую кнопку(OK или Cancel) нажал пользователь. Но самом деле Cancel возвращает vbNullString, который и воспринимается Visual Basic как пустая строка. Но можно воспользоваться недокументированной функцией StrPtr и получить указатель на строку. Например, так

Dim strInput As String

strInput = InputBox("")

If StrPtr(strInput) = 0 Then
    MsgBox "Вы нажали Cancel!"
End If
Пример
' Пример демонстрирует различные способы
' получения сведений от пользователя с помощью
' функции InputBox. Если аргументы x и y опущены,
' то окно диалога автоматически выравнивается по центру
' по соответствующим осям. Переменная MyValue содержит
' значение, введенное пользователем, если была нажата
' кнопка OK или клавиша ENTER. Если пользователь нажмет
' кнопку Cancel, функция возвратит пустую строку
Dim Message, Title, Default, MyValue
Message = "Введите число от 1 до 3"
Title = "Пример"   ' заголовок
Default = "1"   ' значение по умолчанию
' Выводим на экран сообщение, заголовок и значение по умолчанию
MyValue = InputBox(Message, Title, Default)

' Получение справки. Кнопка "Справка" добавляется автоматически
MyValue = InputBox(Message, Title, , , , "DEMO.HLP", 10)

' Размещаем верхний левый угол окна диалога в точке 100, 100
MyValue = InputBox(Message, Title, Default, 100, 100)
Категория
Функции загрузки данных


InStr

Функция InStr

InStr([Start,]String1,String2[,Compare])
InStrB([Start,]String1,String2[,Compare])

Функция InStr(In String) служит для поиска номера символа(номера байта для InStrB), с которого начинается в заданной строке образец поиска. Поиск идет от указанной позиции слева направо. Поиск вхождения одной строки в другую весьма часто используемая операция. Нумерация символов всегда начинается с единицы

Примечание

В функции InStr при очень длинных строках при текстовом методе сравнения, возможно возникновение ошибки времени исполнения Stack overflow. Избежать этой ошибки можно, переведя исходную строку и образец в один регистр и перейдя на бинарное сравнение

Возвращаемое значение

Возвращает значение типа Variant(Long), указывающее позицию первого появления одной строки внутри другой

Перечень возвращаемых значений
Вариант | Значение, возвращаемое функцией InStr
String1 имеет нулевую длину | 0
String1 имеет значение Null | Null
String2 имеет нулевую длину | Start
String2 имеет значение Null | Null
String2 не найдена | 0
String2 найдена внутри String1 | Позиция, в которой обнаружено совпадение
Start > String2 | 0

Параметры
Элемент | Описание
Start | Необязательный. Числовое выражение, которое задает первую позицию для каждого поиска. Если параметр опущен, поиск начинается с позиции первого символа. В том случае, когда значение параметра Start равно Null, возникает ошибка. Параметр Start является обязательным, если задан параметр Compare
String1 | Обязательный. Строковое выражение,в котором ведется поиск
String2 | Обязательный. Отыскиваемое строковое выражение
Compare | Необязательный. Задает тип сравнения для строк. Если значение параметра Compare равно Null, возникает ошибка. В том случае, когда параметр Compare опущен,тип сравнения определяется установками оператора Option Compare

Установки

Для параметра Compare используются следующие установки:
Константа | Значение | Описание
vbUseCompareOption | -1 | Сравнение выполняется с использованием установок для оператора Option Compare
vbBinaryCompare | 0 | Выполняется побитовое сравнение
vbTextCompare | 1 | Выполняется текстовое сравнение
vbDatabaseCompare | 2 | Только для Microsoft Access. Сравнение выполняется с применением сведений из базы данных пользователя

Пример

' В данном примере функция InStr
' возвращает позицию первого появления
' одной строки внутри другой строки
Dim SearchString, SearchChar, MyPos
SearchString ="Русский_Проект"   ' Исходная строка
SearchChar = "Р"   ' Следует найти "P"

' Посимвольное сравнение, начиная с позиции 4. Возвращает 10
MyPos = Instr(4, SearchString, SearchChar, vbTextCompare)

' Двоичное сравнение, начиная с позиции 1. Возвращает 1
MyPos = Instr(1, SearchString, SearchChar, 0)

' Сравнение является двоичным по умолчанию (последний аргумент опущен)
MyPos = Instr(SearchString, SearchChar)   ' Возвращает 1

MyPos = Instr(1, SearchString, "W")   ' Возвращает 0
Категория
Функции обработки строк


InStrRev

Функция InStrRev

InstrRev(StringCheck,StringMatch[,Start[,Compare]])

Новая функция, которая появилась в версии Visual Basic 6.0
Функция служит для поиска номера символа, с которого начинается в заданной строке образец поиска. Поиск идет от указанной позиции справа налево

Возвращаемое значение

Возвращает позицию местоположения одной строки внутри другой, отсчитываемую от конца строки типа Variant

Перечень возвращаемых значений
Вариант сравнения | Возвращаемые InStrRev значения
StringCheck имеет нулевую длину | 0
StringCheck имеет значение Null | Null
StringMatch имеет нулевую длину | Значение параметра Start
StringMatch имеет значение Null | Null
StringMatch не найдена | 0
StringMatch найдена внутри StringCheck | Позиция, начиная с которой найдено совпадение
Start > Len(StringMatch) | 0

Параметры
Функция содержит именованные аргументы
StringCheck | Обязательный. Строковое выражение, в котором проводится поиск
StringMatch | Обязательный. Строковое выражение - образец поиска
Start | Необязательный. Числовое выражение, устанавливающее начальную позицию для каждого поиска. Если этот параметр опущен, используется значение –1, задающее начало поиска с позиции последнего символа. Если параметр Start содержит Null, возникает ошибка
Compare | Необязательный. Числовое значение, задающее тип сравнения, который применяется при оценке подстрок. Если параметр опущен, применяется побитовое сравнение. См. значения в разделе «Установки»

Установки

Параметр Compare может иметь следующие значения:
Константа | Значение | Описание
vbUseCompareOption | –1 | Сравнение выполняется с применением установки, задаваемой оператором Option Compare
vbBinaryCompare | 0 | Выполняется побитовое сравнение. Буквы разных регистров считаются разными
vbTextCompare | 1 | Выполняется текстовое сравнение без учета регистров символов
vbDatabaseCompare | 2 | Только для Microsoft Access. Сравнение выполняется на основе информации, хранящейся в базе данных пользователя

Примечания

Обратите внимание на различие в синтаксисах для функций InStrRev и InStr

Пример
' Ищем символ "р" в слове "Русский_Проект"
Print InStrRev("Русский_Проект", "р")
Категория
Функции обработки строк


Int

Функция Int

Int(Number)

Функция Int(Integer) отбрасывает дробную часть числа и возвращает целое значение. Функция схожа с функцией Fix. Различие между функциями Int и Fix состоит в том, что для отрицательного значения аргумента число функция Int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, а Fix ближайшее отрицательное целое число, большее либо равное указанному. Например, функция Int преобразует -8.4 в -9, а функция Fix преобразует -8,4 в -8

Возвращаемое значение

Функция возвращает значение типа, совпадающего с типом аргумента, которое содержит целую часть числа

Параметры
Number
Обязательный аргумент Number может представлять любое допустимое числовое выражение или число типа Double. Если аргумент имеет значение Null, то возвращается также Null
Примечание Если значение аргумента не попадает в диапазон допустимых значений Double, то генерируется ошибка стадии выполнения Overflow
Если аргумент имеет тип данных String, то он должен представлять собой число, иначе генерируется ошибка стадии выполнения Type mismatch
Пример
' В данном примере показано,
' как функции Int и Fix возвращают целые части чисел.
' В случае отрицательного аргумента Int возвращает
' ближайшее отрицательное целое число,
' меньшее либо равное указанному,
' а Fix ближайшее отрицательное целое число,
' большее либо равное указанному

Dim MyNumber
MyNumber = Int(99.8)	' Возвращает 99
MyNumber = Fix(99.2)	' Возвращает 99

MyNumber = Int(-99.8)	' Возвращает -100
MyNumber = Fix(-99.8)	' Возвращает -99

MyNumber = Int(-99.2)	' Возвращает -100
MyNumber = Fix(-99.2)	' Возвращает -99
Смотри также
Fix
Категория
Математические функции


IPmt

Функция IPmt

IPmt(Rate,Per,NPer,PV[,FV[,Due]])

Вычисляет суммы процентов, приходящихся на выплату платежей в данный платежный период для модели регулярных накоплений\выплат

Возвращаемое значение

Возвращает значение типа Double, указывающее часть периодического платежа, приходящуюся на выплату процентов. Предполагается, что выплаты делаются регулярно, а сумма выплат и учетная ставка остаются постоянными

Параметры
Функция содержит именованные аргументы
Часть | Описание
Rate | Обязательный. Значение типа Double, указывающее учетную ставку за период. Например, при выплате займа на приобретение автомобиля из расчета 10 процентов годовых, ежемесячная ставка составит 0,1/12, то есть 0,0083
Per | Обязательный. Значение типа Double, указывающее номер периода (взноса) (в диапазоне от 1 до NPer)
NPer | Обязательный. Значение типа Double, указывающее полное число периодов (выплат) за рассматриваемый срок. Например, если заем на приобретение автомобиля взят на четыре года, число месячных периодов (количество выплат) составит 4 * 12 (или 48)
PV | Обязательный. Значение типа Double, указывающее величину суммы будущих выплат на текущий момент. Например, при займе на покупку автомобиля, сумма займа является текущим значением при расчете будущих платежей
FV | Необязательный. Значение типа Variant, указывающее результат, который должен быть достигнут по завершении выплат. Для займа это, очевидно, нулевое значение (заем должен быть погашен). Если же вы копите деньги на обучение ребенка, а всего накопить следует 50000 долларов за 18 лет, то результатом является сумма в 50000 долларов. Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный. Значение типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0
Примечание

Регулярные платежи (annuity) – это серии фиксированных платежей в течение определенного периода времени. Регулярные платежи могут быть связаны с займом (например, на покупку дома) или предназначаться для инвестиций (например, путем ежемесячных накоплений)

Параметры Rate и NPer должны рассчитываться с использованием периодов платежей, выраженных в одинаковых единицах измерения. Например, если ставка Rate исчисляется за месяц, то и число периодов (выплат) NPer также следует указать в месяцах

Для всех параметров выплаченные суммы (например, депозитные вклады) представляются отрицательными значениями; а полученные (например, дивиденды) отражаются положительными значениями

Пример
'В данном примере функция IPmt
' применяется для вычисления части платежа,приходящейся
' на выплату процентов. Величина регулярных платежей
' остается при этом постоянной. В качестве входных
' значений при расчете используется процентная ставка
' (APR / 12) номер периода платежа (Period), число
' взносов (TotPmts), текущий объем займа (PVal),
' необходимый результат (FVal), а также режим выплат
' (PayType), то есть число, определяющее, производятся
' платежи в начале или в конце периода
Dim FVal, Fmt, PVal, APR, TotPmts, PayType, Period, IntPmt, TotInt, Msg
Const ENDPERIOD = 0, BEGINPERIOD = 1  ' Режим выплат
FVal = 0  ' Для займа обычно 0
Fmt = "###,###,##0.00"  ' Денежный формат
PVal = InputBox("How much do you want to borrow?")
APR = InputBox("What is the annual percentage rate of your loan?")
If APR > 1 Then APR = APR / 100  ' Правильная форма
TotPmts = InputBox("How many monthly payments?")
PayType = MsgBox("Do you make payments at end of the month?", vbYesNo)
If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD
For Period = 1 To TotPmts  ' Суммирование процентов
   IntPmt = IPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType)
   TotInt = TotInt + IntPmt
Next Period
Msg = "You'll pay a total of " & Format(TotInt, Fmt)
Msg = Msg & " in interest for this loan."
MsgBox Msg  ' Вывод результатов
Смотри также
FV,NPer,NPV,Pmt,PV,Rate
Категория
Финансовые функции


IRR

Функция IRR

IRR(ValueArray()[,Guess])

Функция для вычисления нормы прибыли, то есть процент по инвестициям, которые рассматриваются как ряд последовательных расходов(отрицательные величины) и поступлений(положительные). С ее помощью можно оценить перспективность инвестиций, если известны расходы и поступления

Возвращаемое значение

Возвращает значение типа Double, указывающее норму прибыли для последовательности периодических финансовых операций (выплат или поступлений)

Параметры
Функция содержит именованные аргументы
Часть | Описание
ValueArray() | Обязательный. Массив типа Double, содержащий значения выплат и поступлений. Массив должен содержать как минимум одно отрицательное значение, соответствующее выплате, и одно положительное значение(поступление)
Guess | Необязательный. Значение типа Variant, содержащее оценку значения, которое будет возвращено функцией IRR. Если этот аргумент опущен, используется значение по умолчанию 0,1(10 процентов)
Примечание

Норма прибыли представляет собой процент по инвестициям, получаемый в результате регулярно происходящих выплат и поступлений денег

Порядок операций (выплат и поступлений) функция IRR определяет по номерам элементов массива. По этой причине взаимное расположение элементов обязательно должно соответствовать действительности. Сами элементы массива вовсе не обязаны в данном случае быть одинаковыми

Значение функции IRR определяется итерационным путем. В качестве начального значения используется параметр Guess. Итерации завершаются по достижении точности в 0,00001 процента. Если после 20 итераций результат получить не удается, функция IRR завершает итерационный цикл

Пример
' В данном примере функция IRR
' применяется для вычисления нормы прибыли по пяти
' операциям, занесенным в массив Values(). Первый
' элемент массива имеет отрицательное значение и
' соответствует начальным затратам на организацию
' бизнеса. Оставшиеся четыре элемента имеют
' положительные значения и отражают прибыль за четыре
' следующих года. Переменная Guess содержит начальное значение для расчета нормы прибыли
Dim Guess, Fmt, RetRate, Msg
Static Values(5) As Double ' Объявляем массив
Guess = .1 ' Начинаем с 10 процентов
Fmt = "#0.00"  ' Процентный формат
Values(0) = -70000  ' Затраты на организацию бизнеса.
' Положительные суммы,отвечающие доходу за 4 года
Values(1) = 22000 : Values(2) = 25000
Values(3) = 28000 : Values(4) = 31000
RetRate = IRR(Values(), Guess) * 100  ' Норма прибыли
Msg = "The internal rate of return for these five cash flows is "
Msg = Msg & Format(RetRate, Fmt) & " percent"
MsgBox Msg  ' Выводим норму прибыли
Смотри также
MIRR,NPV
Категория
Финансовые функции


IsArray

Функция IsArray

IsArray(VarName)

Служит для проверки, является ли переменная массивом. Применение функции IsArray особенно полезно для переменных типа Variant, содержащих массивы

Возвращаемое значение

Возвращает значение типа Boolean, указывающее, является ли переменная массивом. Если является, то возвращается True, если нет, то False

Параметры
VarName
Обязательный параметр является идентификатором, задающим переменную
Пример
' Проверим, является ли переменная
' массивом
Dim MyArray(1 To 5) As Integer, YourArray, MyCheck
' Вызываем функцию Array
YourArray = Array(1, 2, 3)
MyCheck = IsArray(MyArray)   ' Возвращает True
MyCheck = IsArray(YourArray)   ' Возвращает True
Категория
Функции обработки массивов


IsDate

Функция IsDate

IsDate(Expression)

Функция IsDate проверяет, является ли данное выражение корректной датой или временем. Функция обрабатывает данные любого типа без генерации ошибки. Но функция использует национальные системные установки дати и времени компьютера, поэтому "правильная" дата, полученная на одном компьютере, может оказаться некорректной на другом компьютере

Возвращаемое значение

Возвращает значение типа Boolean, показывающее, может ли значение выражения быть преобразовано в значение даты. Функция IsDate возвращает True, если выражение принадлежит к типу даты или допускает преобразование к допустимому значению даты; в противном случае возвращается False. В Microsoft Windows допустимыми являются даты в диапазоне от 1 января 100 г. до 31 декабря 9999 г.; другие операционные системы могут поддерживать другие диапазоны дат

Параметры
Expression
Обязательный аргумент - выражение типа Variant, содержащее выражение даты или строковое выражение, распознаваемое как значение даты или времени
Пример
' Используем функцию IsDate
' для проверки, является ли год высокосным
' Для этого проверяем, существует ли 29 февраля

Dim MyYear is String
If IsDate("02/29/" & myYear) Then
MsgBox myYear & "- высокосный год"
Else
MsgBox myYear & "- невысокосный год"
End If
Категория
Функции дат и времени


IsEmpty

Функция IsEmpty

IsEmpty(Expression)

Применяется для проверки на инициализированность переменных с типом данных Variant

Возвращаемое значение

Возвращает значение типа Boolean, указывающее, инициализирована ли переменная

Параметры
Expression
Обязательный параметр является значением типа , содержащим числовое или строковое выражение. Однако, поскольку функция IsEmpty предназначена для проверки того, была ли инициализирована конкретная переменная, в параметре Expression обычно указывают имя только этой переменной
Примечание

Функция IsEmpty возвращает значение True в тех случаях, когда переменная инициализирована или явно установлена в значение Empty; В противном случае она возвращает значение False.Если параметр Expression содержит несколько переменных,всегда возвращается значение False.Функция IsEmpty возвращает существенные сведения только для параметров типа Variant

Пример
' В данном примере функция IsEmpty
' используется для проверки,была ли инициализирована переменная
Dim MyVar, MyCheck
MyCheck = IsEmpty(MyVar) ' Возвращает True

MyVar = Null ' Присваивает значение Null
MyCheck = IsEmpty(MyVar) ' Возвращает False

MyVar = Empty ' Присваивает значение Empty
MyCheck = IsEmpty(MyVar) ' Возвращает True
Категория
Функции обработки системных параметров


IsError

Функция IsError

IsError(Expression)

Функция позволяет организовать удобную обработку ошибок при построчном контроле ошибок. При этом всякая предусматриваемая, но не устраняемая внутри прцедуры ошибка получает свой код и функция возвращает либо требуемое значение, либо код ошибки, котроый проверяется функцией. Значения ошибки создаются путем преобразования действительных чисел в значения ошибки с помощью функции CVErr

Возвращаемое значение

Возвращает значение типа Boolean, указывающее, является ли значением ошибки. Функция IsError возвращает значение True, если параметр Expression имеет значение ошибки; в противном случае возвращается False

Параметры
Expression Обязательный параметр может быть любым действительным выражением
Пример
' В данном примере функция IsError
' используется для проверки, содержит ли числовое
' выражение значение ошибки. Функция CVErr вызывается
' для возврата значения подтипа Error типа Variant
' из определяемой пользователем функции. Предполагается,
' что функция UserFunction является определяемой
' пользователем процедурой-функцией, возвращающей
' значение ошибки; например, возвращаемое значение
' определяется инструкцией UserFunction = CVErr(32767),
' где 32767 - число,задаваемое пользователем
Dim ReturnVal, MyCheck
ReturnVal = UserFunction()
MyCheck = IsError(ReturnVal) ' Возвращает True
Категория
Функции обработки системных параметров


IsMissing

Функция IsMissing

IsMissing(ArgName)

Функция позволяет организовать различные варианты выполнения процедуры в зависимости от того, задан ли при вызове соответствующий необязательный аргумент или нет. Может применяться только с аргументами, тип данных которых при описании процедуры задан как Variant

Возвращаемое значение

Возвращает значение типа Boolean, указывающее, был ли передан в процедуру необязательный параметр типа Variant. Функция IsMissing возвращает значение True, если в указанный параметр не было передано значение; в противном случае возвращается False

Параметры
ArgName Обязательный параметр содержит имя необязательного параметра процедуры
Дополнительные сведения

Функция IsMissing используется для проверки передачи необязательных параметров типа Variant при вызове процедуры. Если для конкретного параметра функция IsMissing возвращает значение True, то использование этого параметра в других программных конструкциях может привести к возникновению определяемой пользователем ошибки. Для параметров ParamArray, функция IsMissing всегда возвращает значение False. Чтобы выяснить, не пуст ли параметр ParamArray, проверьте, не установлено ли значение верхней границы массива меньше, чем значение его нижней границы

Замечание Функция IsMissing не работает с простыми типами данных (такими как Integer или Double), так как в отличие от типа Variants, эти типы данных не снабжены битом признака «отсутствия» ("missing" flag bit). Синтаксис для типовых необязательных параметров позволяет разработчику задать значение по умолчанию. Тогда, в случае отсутствия параметра при вызове процедуры, этот параметр будет иметь значение, заданное по умолчанию, как в следующем примере:

Sub MySub(Optional MyVar As String = "specialvalue")
    If MyVar = "specialvalue" Then
       ' MyVar опущен
    Else
    ...
End Sub

Во многих случаях можно опустить проверку If MyVar полностью, сделав значение по умолчанию равным тому значению, которое требуется для параметра MyVar в том случае, когда пользователь не указывает его при вызове функции. Это сделает программу более компактной и эффективной

Пример
' В данном примере функция IsMissing
' используется для проверки, был ли передан
' в определяемую пользователем процедуру необязательный
' параметр. Следует отметить что параметры Optional
' могут иметь значения по умолчанию и типы данных,
' отличные от Variant
Dim ReturnValue

' Следующие инструкции вызывают определяемую пользователем
' процедуру Function
ReturnValue = ReturnTwice() ' Возвращает Null
ReturnValue = ReturnTwice(2) ' Возвращает 4

' Описывает процедуру Function
Function ReturnTwice(Optional A)
   If IsMissing(A) Then
      ' Если параметр опущен, возвращается Null
      ReturnTwice = Null
   Else
      ' Если параметр указан, возвращается удвоенное значение
      ReturnTwice = A * 2
   End If
End Function
Категория
Функции обработки системных параметров


IsNull

Функция IsNull

IsNull(Expression)

Главной задачей функции IsNull является исключение ошибок времени исполнения, возникающих при манипуляциях данными, которые не допускают использования значения Null

Возвращаемое значение

Возвращает значение типа Boolean, указывающее, не содержит ли выражение недействительных данных(значения Null). Функция IsNull возвращает значение True, если параметр Expression имеет значение Null; в противном случае IsNull возвращает значение False. Если параметр Expression содержит более одной переменной, то значение True для всего выражения будет возвращено только в том случае, когда все эти переменные содержат значение Null

Параметры
Expression Обязательный параметр является значением типа Variant, содержащим числовое выражение или строковое выражение

Примечание
Значение Null указывает, что переменная типа Variant не содержит допустимых данных.Значение Null не идентично значению Empty, которое указывает на то, что переменная еще не была инициализирована. Это значение также не эквивалентно пустой строке (""), которую иногда называют строкой нулевой длины

Важная информация
Функция IsNull проверяет, содержит ли параметр Expression значение Null. Выражения, которые могли бы при некоторых обстоятельствах иметь значение True, например, If Var = Null and If Var <> Null, всегда возвращают значение False. Это происходит потому, что любое выражение, содержащее внутри себя значение Null, всегда имеет значение Null и, следовательно, возвращает False

Пример
' Проверим, содержит ли переменная
' значение Null
Dim MyVar, MyCheck
MyCheck = IsNull(MyVar) ' Возвращает False

MyVar = ""
MyCheck = IsNull(MyVar) ' Возвращает False

MyVar = Null
MyCheck = IsNull(MyVar) ' Возвращает True
Категория
Функции обработки системных параметров


IsNumeric

Функция IsNumeric

IsNumeric(Expression)

Функция IsNumeric проверяет, является ли значение данного выражения числом. Функция способна обрабатывать данные любого типа без генерации ошибки

Возвращаемое значение

Возвращает значение типа Boolean, показывающее, имеет ли выражение числовое значение. Функция IsNumeric возвращает True, если выражение имеет числовое значение; в противном случае возвращается False.IsNumeric возвращает False, если выражение является выражением даты

Параметры
Expression Обязательный аргумент представляет выражение типа Variant, содержащее числовое выражение или строковое выражение
Пример
' Проверим, имеет ли переменная
' значение, которое может
' интерпретироваться как числовое

Dim MyVar, MyCheck
MyVar = "53" ' присваиваем значение
MyCheck = IsNumeric(MyVar) ' возвращает True

MyVar = "45 Help"	' присваиваем значение
MyCheck = IsNumeric(MyVar) ' возвращает False
Категория
Математические функции


IsObject

Функция IsObject

IsObject(Expression)

Функция проверяет, имеет ли данная переменная объектный тип данных

Возвращаемое значение

Возвращает значение типа Boolean, указывающее, представляет ли идентификатор объектную переменную

Параметры
Expression Обязательный параметр является именем переменной
Примечание

Функция IsObject полезна при определении, является ли значение типа Variant, определенным как VarType vbObject. Это случается только тогда, когда значение типа Variant задает (или задавало) ссылку на объект, или если выражение имеет значение Nothing

Функция IsObject возвращает значение True в тех случаях, когда параметр Expression является переменной, объявленной как переменная объектного типа или любого действительного типа класса, или же Expression имеет тип Variant, заданный как VarType vbObject, или как объект, определенный пользователем; в противном случае возвращается значение False. Функция IsObject возвращает значение True даже для переменной со значением Nothing

Для проверки допустимой ссылки на объект следует использовать перехват ошибок

Пример
 ' В данном примере функция IsObject
' используется для проверки, является ли идентификатор
' объектной переменной. MyObject и YourObject являются
' объектными переменными одного типа. Эти имена
' не представляют какие-либо реальные объекты и
' используются только для демонстрации
Dim MyInt As Integer, YourObject, MyCheck
Dim MyObject As Object
Set YourObject = MyObject ' Задает ссылку на объект
MyCheck = IsObject(YourObject) ' Возвращает True
MyCheck = IsObject(MyInt) ' Возвращает False
Категория
Функции работы с объектами


Join

Функция Join

Join(SourceArray[,Delimiter])

Новая функция,которая появилась в Visual Basic 6.0
Функция служит для слияния всех элементов заданного массива в одну строку со вставкой между ними необязательного разделителя

Возвращаемое значение

Возвращает строку, созданную путем объединения множества подстрок, содержащихся в массиве с разделителем между ними

Параметры
SourceArray | Обязательный аргумент - одномерный массив, содержащий объединяемые подстроки
Delimiter | Необязательный аргумент - символ, используемый для разграничения подстрок в возвращаемой строке. Если параметр опущен, применяется символ пробела (" "). В том случае, когда аргумент является строкой нулевой длины (""), производится конкатенация всех элементов списка без добавления разделителей
Пример
' Соединяем два слова
Dim vArr(1 to 2)
Dim retval as String
vArr(1)="Русский"
vArr(2)="Проект"
retval=Join(vArr,"_")
Print retval
Смотри также
Split
Категория
Функции обработки строк


LBound

Функция LBound

LBound(ArrayName[,Dimension])

Функция LBound(Lower Bound) служит для определения нижней границы (индекса самого первого элемента) массива по заданному измерению

Возвращаемое значение

Возвращает значение типа Long, содержащее наименьший возможный нижний индекс для указанного измерения массива

Параметры
Элемент | Описание
ArrayName | Обязательный. Имя переменной массива, соответствующее стандартным соглашениям о наименовании переменных. При задании в качестве аргумента переменной, не являющейся массивом, генерируется ошибка времени исполнения Type mismatch
Dimension | Необязательный. Значение типа Variant(Long). Целое число, указывающее, для какого из измерений возвращается нижняя граница. Первому измерению соответствует 1, второму – 2 и т. д. Если параметр Dimension опущен, предполагается значение равное 1

Примечание

Функция LBound применяется совместно с функцией UBound для определения размера массива. Функция UBound используется для нахождения верхней границы для измерения массива

Нижняя граница для любого из измерений массива равна по умолчанию 0 или 1, в зависимости от установки оператора Option Base. Массивы, созданные с помощью функции Array, имеют основание равное нулю; на это значение не оказывает влияния установка оператора Option Base

Массивы, измерения которых установлены с использованием предложения To в операторах Dim, Private, Public, ReDim или Static, могут иметь нижнюю границу равной любому целому значению

Пример
' Объявляем трехмерный массив
Dim myArray(1 To 100, 0 To 3, -3 To 4)
Dim retval
retval=LBound(myArray,1) ' возвращает 1
retval=LBound(myArray,2) ' возвращает 0
retval=LBound(myArray,3) ' возвращает -3
Категория
Функции обработки массивов


LCase

Функция LCase

LCase(String)
LCase$(String)

Функция LCase(Lower Case) преобразует символы строки в строчные; все буквы в нижнем регистре и небуквенные символы остаются неизмененными. Вместо LCase можно использовать универсальную функцию преобразования строк StrConv

Возвращаемое значение

Возвращет строку, которая отличается от входной тем, что все буквы преобразованы в строчные. Если параметр String содержит Null, то и возвращаемым значением является Null

Параметры
String Обязательный аргумент может представлять любое строковое выражение
Пример
 ' Преобразуем  строчку в нижний регистр
Form1.Caption=LCase("РусСкий_ПРОект")
Смотри также
StrConv, UCase
Категория
Функции обработки строк


Left

Функция Left

Left(String, Length)
Left$(String, Length)
LeftB(String, Length)
LeftB$(String, Length)

Функция Left служит для усечения исходной строки до заданной длины. Для определения числа символов в строке следует использовать функцию Len

Возвращаемое значение

Возвращает строку прочитанных данных. Даннные могут быть символами или байтами

Параметры
Функция содержит именованные аргументы
String | Обязательный аргумент - строковое выражение, из которого извлекаются символы. Если выражение имеет значение Null, то возвращается Null
Length | Обязательный аргумент - значение типа Variant(Long). Числовое выражение, указывающее число возвращаемых символов. Если равно 0, то возвращается пустая строка (" "). Если значение Length больше либо равняется числу символов в исходной строке, то возвращается вся строка Примечание: При отрицательных значениях аргумента генерируется ошибка времени исполнения Invalid procedure call or argument Если аргумент Null, то генерируется ошибка времени исполнения Invalid use of Null
Пример
' Используем функцию для извлечения
' указанного числа первых символов строки
Dim strMyString, retval
' Задаем строку
strMyString = "Русский_Проект"
retval = Left(strMyString, 1)  ' Возвращает "Р"
retval = Left(strMyString, 7) ' Возвращает "Русский"
retval = Left(strMyString, 27)	' Возвращает "Русский_Проект"
Смотри также
Len, Mid, Right
Категория
Функции обработки строк


Len

Функция Len

Len(String | Varname)
LenB(String | Varname)

Функция Len вычисляет число символов в строке или размер заданной переменной. Из двух возможных аргументов должен быть указан только один. Для определяемых пользователем типов Len возвращает размер, который требуется для записи переменной в файл

Возвращаемое значение

Возвращает значение типа Long, содержащее число символов в строке или число байт, необходимое для размещения переменной

Параметры
String
Обязательный аргумент - любое допустимое строковое выражение
Varname
Обязательный аргумент - любое допустимое имя переменной. Если выражение имеет значение Null, то возвращается Null. Если же аргумент имеет значение типа Variant, то функция Len обрабатывает его так же, как и значение типа String, и всегда возвращает число содержащихся в нем символов
Пример
 ' Вычисляем длину строки Русский_Проект
Print Len("Русский_Проект")
Категория
Функции обработки строк


LoadPicture

Функция LoadPicture

LoadPicture([FileName], [Size], [ColorDepth],[X,Y])

Используя свойство Picture, функция загружает графическое изображение в форму или элементы управления PictureBox и Image. Visual Basic различает следующие форматы графических файлов: растровые файлы (.bmp), значки (.ico), файлы (.rle) с групповым кодированием(run-length encoded), метафайлы (.wmf), улучшенные метафайлы (.emf), файлы типа GIF (.gif) и JPEG (.jpg)

Параметры
FileName | Необязательный параметр. Строковая переменная, определяющая имя загружаемого графического файла. Может включать имя папки и диска. Если не указано значение файла, то функция LoadPicture очищает элементы управления Image или PictureBox
Size | Необязательный параметр типа Variant. Если FileName является курсором или значком файла, то параметр определяет желаемый размер изображения. Допустимые значения приведены в таблице установок
ColorDepth | Необязательный параметр типа Variant. Если FileName является курсором или значком файла, то параметр определяет желаемую глубину цвета. Допустимые значения приведены в таблице установок
X | Необязательный параметр типа Variant. Обязателен, если указан параметр Y. Если FileName является курсором или значком файла, то параметр определяет желаемую ширину. В файле, содержащем множество отдельных изображений, в случае, если изображение заданного размера не доступно, используется наилучшее приближение. Значения X и Y используются, если установлено значение vbLPCustom аргумента ColorDepth. Для значков файлов наибольшее возможное значение 255
Y | Необязательный параметр типа Variant. Обязателен,если указан параметр X.Если FileName является курсором или значком файла, то параметр определяет желаемую высоту. В файле, содержащем множество отдельных изображений, используется наилучшее приближение в случае, если изображение заданного размера не доступно. Для значков файлов наибольшее возможное значение 255

Установки

Установки для части Size приведены в таблице
Константа | Значение | Описание
vbLPSmall | 0 | Системный значок малого размера
vbLPLarge | 1 | Системный значок большого размера, определяемого видеодрайвером
vbLPSmallShell | 2 | Значок малого размера для оболочки. Размер определяется установками кнопок Заголовок на вкладке Оформление диалогового окна Экран Панели управления
vbLPLargeShell | 3 | Значок большого размера для оболочки. Размер определяется установками кнопок Заголовок на вкладке Оформление диалогового окна Экран Панели управления
vbLPCustom | 4 | Определяемый размер, задается аргументами X и Y

Установки для части ColorDepth приведены в таблице
Константа | Значение | Описание
vbLPDefault | 0 | Оптимальное значение при использовании определенных файлов
vbLPMonochrome | 1 | 2 цвета
vbLPVGAColor | 2 | 16 цветов
vbLPColor | 3 | 256 цветов

Чтобы загрузить графическое изображение в элементы управления PictureBox и Image или же использовать его в качестве фона формы, следует присвоить возвращаемое значение функции LoadPicture значению свойства Picture данных элементов. Например:

Set Picture = LoadPicture("PARTY.BMP")
Set Picture1.Picture = LoadPicture("PARTY.BMP")

Чтобы прикрепить к форме значок, приравняйте значение свойства Icon данной формы значению, возвращаемому функцией LoadPicture:

Set Form1.Icon = LoadPicture("MYICON.ICO")

Значки могут быть присвоены для свойства DragIcon любого элемента управления, за исключением элементов управления Timer и Menu. Например:

Set Command1.DragIcon = LoadPicture("MYICON.ICO")

С помощью функции LoadPicture можно загрузить графический файл в системный Буфер обмена:

Clipboard.SetData LoadPicture("PARTY.BMP")
Категория
Функции загрузки данных


LoadResData

Функция LoadResData

LoadResData(id,type)

Загружает данные нескольких возможных типов из файла ресурсов (.res). Функция LoadResData может загружать из файла ресурсов до 64Кб данных. Использование функции LoadResData облегчает локализацию приложений Visual Basic. В этом случае все ресурсы, которые должны быть переведены на другой язык, собраны в одном файле ресурсов, в связи с чем отпадает необходимость обращаться к исходному коду или повторно компилировать приложение

Возвращаемое значение

Возвращает массив данных типа Byte

Параметры
Часть | Описание
id | Обязательный параметр. Целое число или строка, которые указывают идентификатор (id) данных в файле ресурсов. Ресурс с идентификатором равным 1 зарезервирован для значка приложения
type | Обязательный параметр. Значение, которое указывает формат возвращаемых данных. Допустимые значения представлены в таблице установок. Значение может быть также строкой, задающей имя определенного пользователем ресурса

Установки для части type приведены в таблице:

Установка | Описание
1 | Ресурс курсор
2 | Ресурс растр
3 | Ресурс значок
4 | Ресурс Меню
5 | Ресурс диалоговое окно
6 | Ресурс Строка
7 | Ресурс каталога шрифта
8 | Ресурс Шрифт
9 | Таблица Акселератора
10 | Ресурс определенный пользователем
12 | Групповой курсор
14 | Групповой значок
Примечание

При использовании функции LoadResData с ресурсами растр, значок и курсор – возвращается строка, содержащая число бит в ресурсе. При работе с этими ресурсами применяйте функцию LoadResPicture

Категория
Функции загрузки данных


LoadResPicture

Функция LoadResPicture

LoadResPicture(id, restype)

Загружает растр, значок или курсор из файла ресурсов (.res). Функцию LoadResPicture можно использовать вместо ссылки на графическое изображение, хранимое в свойстве Picture формы Form или в элементах управления. Сохранение растров, значков и курсоров в элементах управления и доступ к ним из файла ресурсов существенно сокращают время загрузки, т. к. появляется возможность загружать их из файла ресурсов индивидуально, а не все сразу во время загрузки формы Form. Использование функции LoadResPicture облегчает локализацию приложений Visual Basic. В этом случае все ресурсы, которые должны быть переведены на другой язык, собраны в одном файле ресурсов, в связи с чем отпадает необходимость исправлять исходный код или перекомпилировать приложение

Параметры
Часть | Описание
id | Обязательный параметр. Целое число или строка, которые указывают идентификатор (ID) данных в файле ресурсов. Ресурс с идентификатором равным 1 зарезервирован для значка приложения
restype | Обязательный параметр. Значение или константа, которые указывают формат возвращаемых данных. Допустимые значения представлены в таблице установок
Установки

Установки для части restype приведены в таблице
Константа | Значение | Описание
vbResBitmap | 0 | Ресурс растр
vbResIcon | 1 | Ресурс значок
vbResCursor | 2 | Ресурс курсор

Категория
Функции загрузки данных


LoadResString

Функция LoadResString

LoadResString(id)

Загружает строку из файла ресурсов (.res). Функцию LoadResString можно применять в коде вместо строки литералов. Хранение в ней длинных строк данных и доступ к ним из файла ресурсов существенно сокращают время загрузки формы. Появляется возможность загружать ресурсы из файла ресурсов индивидуально, а не все сразу во время загрузки формы. Использование функции LoadResString облегчает локализацию приложений Visual Basic. В этом случае все ресурсы, которые должны быть переведены на другой язык, собраны в одном файле ресурсов, в связи с чем отпадает необходимость исправлять исходный код или перекомпилировать приложение

Параметры
Часть | Описание
id | Обязательный параметр. Целое число, указывающее идентификатор (ID) данных в файле ресурсов. Ресурс, идентификатор которого равен 1, зарезервирован для значка приложения

Категория
Функции загрузки данных


Loc

Функция Loc

Loc(FileNumber)

Функция Loc(Location of current position) определяет номер последней прочитанной/записанной записи или байта для файла, открытого инструкцией Open

Возвращаемое значение

Возвращает значение типа Long, указывающее текущую позицию записи/считывания в открытом файле

Ниже перечислены значения, возвращаемые для каждого режима файла
Режим | Возвращаемое значение
Random | Номер последней записи, считанной или записанной в этот файл
Sequential | Номер текущего байта, деленный на 128. Следует отметить, что значение, возвращаемое функцией Loc для файлов в режиме последовательного доступа никогда не используется
Binary | Номер последнего считанного или записанного байта

Параметры
FileNumber Обязательный параметр - любое действительное значение типа Integer, указывающим номер файла

Пример

' В данном примере функция Loc
' используется для определения текущей позиции
' открытого файла в режиме чтения/записи.
' Предположим, что  текстовый файл TESTFILE
' существует и содержит несколько строк данных

Dim MyLocation, MyLine
' Открываем вновь созданный файл
Open "TESTFILE" For Binary As #1
Do While MyLocation < LOF(1) ' Цикл до конца файла
    MyLine = MyLine & Input(1, #1)	' Читаем строку в переменную
    MyLocation = Loc(1)	' Определяем текущую позицию внутри файла
' Выводим в окно "Отладка"
    Debug.Print MyLine; Tab; MyLocation
Loop
Close #1 ' Закрываем файл
Категория
Функции работы с файлами


LOF

Функция LOF

LOF(FileNumber)

Функция LOF(Len Of File) определяет длину файла, открытого инструкцией Open, в байтах. Для определения размера файла, который не открыт,следует использовать функцию FileLen

Возвращаемое значение

Возвращает значение типа Long, содержащее размер в байтах для файла, открытого с помощью оператора Open

Параметры
FileNumber Обязательный параметр является значением типа Integer, содержащим действительный номер файла

Пример
' В данном примере функция LOF используется
' для определения размера открытого файла.
' Предположим, что текстовый файл TESTFILE
' существует и содержит данные

Dim FileLength
' Открываем файл
Open "TESTFILE" For Input As #1
' Определяем размер файла
FileLength = LOF(1)
Close #1	' Закрываем файл
Смотри также
FileLen
Категория
Функции работы с файлами


Log

Функция Log

Log(Number)

Функция вычисляет значения элементарной математической функции ln(x)(натурального логарифма). Применяется в математических и статистических расчетах

Натуральный логарифм – это логарифм по основанию e. Значение константы e равняется приблизительно 2,718282.

Для вычисления логарифма числа x по основанию n следует разделить натуральный логарифм числа x на натуральный логарифм числа n:

Logn(x) = Log(x) / Log(n)

Возвращаемое значение

Возвращает значение типа Double, содержащее натуральный логарифм числа

Параметры
Number Обязательный параметр является значением типа Double или любым действительным числовым выражением, значение которого больше нуля
Примечание

Если аргумент не является числом, то генерируется ошибка времени исполнения Type mismatch
Если аргумент равен нулю или отрицателен, то генерируется ошибка времени исполнения Invalid procedure call or argument

Пример
' В следующем примере показана
' пользовательская процедура Function,
' предназначенная для вычисления логарифмов
' по основанию 10
Static Function Log10(X)
   Log10 = Log(X) / Log(10#)
End Function
Категория
Тригонометрические функции


LTrim

Функция LTrim

LTrim(String)
LTrim$(String)

Функция LTrim(Left Trim) удаляет пробелы в начале строки

Возвращаемое значение

Возвращает исходную строку типа Variant(String) без начальных пробелов. Если аргумент имеет значение Null, то возвращается Null

Параметры
String Обязательный аргумент может представлять любое строковое выражение
Пример
Dim retval
retval=LTrim("  <-Русский_Проект->  ")
Print retval
Смотри также
RTrim, Trim
Категория
Функции обработки строк


MacId

Функция MacId

MacId(Constant)

Функция MacId используется на Macintosh для конвертирования 4-символьных констант в значения, которые можно использовать в инструкциях Dir, Kill, Shell, AppActivate. Например, Macintosh не поддерживает подстановочные символы * и ? в функции Dir. В Microsoft Windows функция недоступна

Параметры
Constant
Обязательный аргумент, содержащий 4 символа, определяющих тип ресурсов, тип файлов или события Apple(например, TEXT, OBIN, MSWD(Microsoft Word), XCEL (Microsoft Excel)
Пример
' Используем функцию для удаления
' всех текстовых файлов из текущей папки
Kill MacId("TEXT")


MacScript

Функция MacScript

MacScript(Script)

Функция MacScript используется на Macintosh для запуска AppleScript и возвращает значение, возвращаемеое этим скриптом

Параметры
Script
Обязательный аргумент - строковое выражение
Пример
' Используем функцию для открытия
' стандартного диалогового окна открытия файлов Choose File
ThePath$ = Macscript("ChooseFile")


Mid

Функция Mid

Mid(String,Start,[Length])
Mid$(String,Start,[Length])
MidB(String,Start,[Length])
MidB$(String,Start,[Length])

Функция Mid(Middle) используется для считывания заданного числа символов или байт подряд от заданной позиции в строке слева направо. Нумерация символов в строке всегда начинается с единицы. Для определения числа символов в строке следует использовать функцию Len

Возвращаемое значение

Возвращает значение типа Variant (String), содержащее указанное число символов строки

Параметры
Функция содержит именованные аргументы
String
Обязательный аргумент - строка, из которой извлекаются символы. Если аргумент имеет значение Null, возвращается Null
Start
Обязательный аргумент - значение типа Long. Позиция символа в строке String, с которого начинается нужная подстрока. Если Start больше числа символов в строке string, функция Mid возвращает пустую строку ("")
Примечание Если аргумент имеет отрицательное значение или равен 0, то генерируется ошибка времени исполнения
Length
Необязательный аргумент - значение типа Variant (Long). Число возвращаемых символов. Если этот аргумент опущен или превышает число символов, расположенных справа от позиции Start, то возвращаются все символы от позиции Start до конца строки
Примечание Если аргумент имеет отрицательное значение, то генерируется ошибка времени исполнения
Пример
' Используем функцию для извлечения
' указанного числа символов
' из слова колобок
Dim Mystring,retval
Mystring="колобок"
retval=Mid(Mystring,3,3)
Print retval ' возвращает лоб
Смотри также
Len
Категория
Функции обработки строк


Minute

Функция Minute

Minute(Time)

Функция Minute используется для получения значения минут часа из выражения времени

Возвращаемое значение

Возвращает значение типа Variant(Integer) от 0 до 59, содержащее число минут неполного часа

Параметры
Time
Обязательный аргумент - любое значение типа Variant, числовым выражением, строковым выражением или любым их сочетанием, которое представляет значение времени. Если время содержит значение Null, возвращается значение Null
Пример
' Вычисляем значение минуты
' из сегодняшней даты
Dim MyMinute
MyTime = Now
MyMinute = Minute(MyTime)
' Получаем значение минут
Print MyMinute
Смотри также
Hour, Second
Категория
Функции дат и времени


MIRR

Функция MIRR

MIRR(ValueArray(), FinanceRate, ReinvestRate)

Функция MIRR рассчитывет норму прибыли для ряда финансовых операций, которые рассматриваются как ряд последовательных расходов-инвестиций,(отрицательные величины) и поступлений(положительные). При этом предполагается, что инвестици требуют регулярных расходов на их обслуживание(например, в виде выплат по ссуде), задаваемых аргументом FinanceRate, в то время как поступления приносят регулярных доход, ставка которого задается аргументом ReinvestRate

Параметры
Функция содержит именованные аргументы
ValueArray() | Обязательный аргумент - массив типа Double, содержащий значения выплат и поступлений. Массив должен содержать как минимум одно отрицательное значение, соответствующее выплате, и одно положительное значение (поступление)
FinanceRate | Обязательный аргумент - выражение типа Double, указывающее ставку по инвестициям
ReinvestRate | Обязательный аргумент - выражение типа Double, указывающее процент, получаемый от реинвестиций полученных денег

Примечание

Норма прибыли представляет собой процент по инвестициям, получаемый в результате регулярно происходящих выплат и поступлений денег. Модифицированная норма прибыли исчисляется, исходя из разных ставок по инвестициям (FinanceRate) и реинвестициям (ReinvestRate)

Аргументы FinanceRate и ReinvestRate задаются как десятичные дроби. Например, значение 12 процентов выражается как 0,12

Порядок операций (выплат и поступлений) функция MIRR определяет по номерам элементов массива. По этой причине взаимное расположение элементов обязательно должно соответствовать действительности

Пример
' В данном примере функция MIRR
' используется для расчета модифицированной нормы
' прибыли по операциям, занесенным в массив Values()
' LoanAPR представляет ставку по финансированию,
' а InvAPR - процент по реинвестициям

Dim LoanAPR, InvAPR, Fmt, RetRate, Msg
Static Values(5) As Double  ' Объявляет массив
LoanAPR = .1 ' Ставка по займу
InvAPR = .12  ' Ставка по реинвестициям
Fmt = "#0.00"  ' Денежный формат
Values(0) = -70000  ' Затраты на организацию бизнеса
' Положительные суммы, отвечающие доходу за 4 года
Values(1) = 22000 : Values(2) = 25000
Values(3) = 28000 : Values(4) = 31000
RetRate = MIRR(Values(), LoanAPR, InvAPR)

Msg = "Модифицированная норма прибыли по пяти операциям составляет "
Msg = Msg & Format(Abs(RetRate) * 100, Fmt) & "%."
Print Msg  ' Выводим норму прибыли
Категория
Финансовые функции


Month

Функция Month

Month(Date)

Функция Month получает номер месяца для заданной даты

Возвращаемое значение

Возвращает значение типа Variant(Integer), содержащее целое число (от 1 до 12 включительно), которое представляет месяц в значении даты

Параметры
Date Обязательный аргумент может быть любым значением типа Variant, числовым выражением, строковым выражением или любым их сочетанием, которое представляет дату. Если дата содержит значение Null, возвращается значение Null
Пример
' Выводим номер июля
Form1.Caption = Month("27/07/66")
Смотри также
Day,Year
Категория
Функции дат и времени


MonthName

Функция MonthName

MonthName(Month[, Abbreviate])

Новая функция,которая появилась в версии Visual Basic 6.0
Функция MonthName получает полное или сокращенное название месяца по его номеру

Возвращаемое значение

Возвращает строку, содержащее полное или сокращенное название месяца

Параметры
Month
Обязательный аргумент типа Long, определяющего номер месяца(1-12)
Abbreviate
Необязательный аргумент - флаг типа Boolean, указывающий на вид возвращаемого месяца. По умолчанию установлен в False, что означает вывод полного имени месяца
Пример
' Выводим полное название седьмого месяца
Form1.Caption = MonthName(7)
Смотри также
WeekdayName
Категория
Функции дат и времени


MsgBox

Функция MsgBox

MsgBox(Prompt, [Buttons], [Title], [HelpFile], [Context])

Функция MsgBox выводит на экран диалоговое окно, содержащее сообщение, устанавливая режим ожидания нажатия кнопки пользователем

Возвращаемое значение

Возвращает значение типа Integer, указывающее, какая кнопка была нажата

Ниже перечислены значения, содержащие код нажатой кнопки:

Константа | Значение | Нажатая кнопка
vbOK | 1 | OK
vbCancel | 2 | Отмена(Cancel)
vbAbort | 3 | Прервать (Abort)
vbRetry | 4 | Повторить (Retry)
vbIgnore | 5 | Пропустить (Ignore)
vbYes | 6 | Да (Yes)
vbNo | 7 | Нет (No)

Параметры
Функция содержит именованные аргументы
Часть | Описание
Prompt | Обязательный. Строковое выражение, отображаемое как сообщение в диалоговом окне. Максимальная длина строки составляет приблизительно 1024 символа. Длинный текст разбивается автоматически, но можно задавать разбиение строки явно, используя символы возврата каретки и перевода строки(vbCrLf)
Buttons | Необязательный аргумент - целочисленная константа, которая является суммой VB-констант, определяющих ряд характеристик диалогового окна - число и тип кнопок, тип значка, основная кнопка, модальность окна сообщения(см.ниже). Значение по умолчанию равно 0
Title | Необязательный. Строковое выражение, отображаемое в строке заголовка диалогового окна. Максимальное число символов для заголовка около 50. Если этот параметр опущен, в строку заголовка помещается имя приложения
HelpFile | Необязательный. Строковое выражение, определяющее имя файла Справки, содержащего контекстно-зависимую Справку о данном диалоговом окне. Если этот параметр указан, то необходимо задать также и параметр Context
Context | Необязательный. Числовое выражение, определяющее номер соответствующего раздела справочной системы. Если этот параметр указан, то необходимо задать также и параметр HelpFile

Константы, используемые в аргументе Buttons для задания вида выводимых кнопок, пиктограмм
Константа | Значение | Описание
vbOKOnly | 0 | Отображается только кнопка "OK"
vbOKCancel | 1 | Отображаются кнопки "OK" и "Отмена" (Cancel)
vbAbortRetryIgnore | 2 | Отображаются кнопки "Прервать" (Abort), "Повторить" (Retry) и "Пропустить" (Ignore)
vbYesNoCancel | 3 | Отображаются кнопки "Да" (Yes), "Нет" (No) и "Отмена" (Cancel)
vbYesNo | 4 | Отображаются кнопки "Да" (Yes) и "Нет" (No)
vbRetryCancel | 5 | Отображаются кнопки "Повторить" (Retry) и "Отмена" (Cancel)
vbCritical | 16 | Используется значок "Критическое сообщение"
vbQuestion | 32 | Используется значок "Предупреждающий запрос"
vbExclamation | 48 | Используется значок "Предупреждение"
vbInformation | 64 | Используется значок "Информационное сообщение"
vbDefaultButton1 | 0 | Основной является первая кнопка
vbDefaultButton2 | 256 | Основной является вторая кнопка
vbDefaultButton3 | 512 | Основной является третья кнопка
vbDefaultButton4 | 768 | Основной является четвертая кнопка
vbApplicationModal | 0 | Модальное окно на уровне приложения: чтобы продолжить работу с текущим приложением, необходимо ответить на данное сообщение
vbSystemModal | 4096 | Модальное окно на уровне системы: все приложения будут недоступны до тех пор, пока пользователь не ответит на данное сообщение
vbMsgBoxHelpButton | 16384 | Добавляется кнопка Справка(Help)
VbMsgBoxSetForeground | 65536 | Аналогично параметру vbApplicationModal
vbMsgBoxRight | 524288 | Текст выравнивается по правому краю
vbMsgBoxRtlReading | 1048576 | Задает порядок вывода текста справа налево для арабской системы и иврит

Примечание

Если используется кнопка Отмена(Cancel), то можно вместо нее нажимать на клавишу Esc
В отличие от InputBox окно MsgBox не позиционируется на экране, а всегда располагается в центре экрана

Пример
Dim retval As Integer
retval = MsgBox("А ты посетил сайт http://rusproject.newmail.ru ?", _
vbQuestion + vbYesNo, "Русский_Проект")
Категория
Функции загрузки данных


Now

Функция Now

Now

Функция Now позволяет быстро узнать текущую дату и время по системному календарю и часам компьютера. Чтобы получить только системную дату без времени, используйте функцию Date
Примечание: Не забывайте, что пользователь может самостоятельно устанавливать системное время и дату на своем компьютере, поэтому эти значения могут не иметь ничего общего с реальной датой и временем!

Возвращаемое значение

Возвращает значение типа Variant(Date), содержащее текущую дату и время

Параметры

Функция не имеет аргументов

Пример

' Выводим текущую системную дату и время
Dim Today
Today=Now ' узнаем текущую системную дату и время
' Преобразуем в строку и выводим на форме
Print CStr(Today)
Смотри также
Date
Категория
Функции дат и времени


NPer

Функция NPer

NPer(Rate, Pmt, PV, [FV], [Due])

Функция NPer вычисляет количество платежных периодов для модели регулярных накоплений и выплат. Функция подходит для расчета выплат по закладной (например за дом) или итогов накоплений при ежемесячных банковских взносах

Возвращаемое значение

Возвращает данные типа Double, содержащие требуемое число платежных периодов

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double, указывающее учетную ставку за период
Pmt | Обязательный аргумент типа Double, указывающее размер выплат за период. Каждый платеж включает как собственно возвращаемую сумму, так и проценты, которые не изменяются от одного платежа к другому
PV | Обязательный аргумент типа Double, указывающее величину суммы на текущий момент. Например, при займе на покупку автомобиля, сумма займа является текущим значением при расчете будущих платежей
FV | Необязательный аргумент типа Variant, указывающее результат, который должен быть достигнут по завершении выплат. Для займа это, очевидно, нулевое значение (заем должен быть погашен). Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный аргумент типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0

Примечание Для всех аргументов выплаченные суммы (депозитные вклады и т.п.) представляются отрицательными значениями; а полученные (дивиденды) положительными

Пример
Категория
Финансовые функции


Функции Visual Basic:NPV

Функция NPV

NPV(Rate, ValueArray())

Функция NPV служит служит для расчета приведенного на текущий момент сальдо ряда будущих финансовых операций с учетом уценки капитала по модели финансового потока.Порядок операций (выплат и поступлений) функция NPV определяет по номерам элементов массива.По этой причине взаимное расположение элементов обязательно должно соответствовать действительности.Функции NPV и PV похожи с тем лишь исключением, что в отличие от функции NPV функция PV разрешает регистрацию операций не только в конце,но и в начале каждого периода.Кроме того,в отличие от функции PV функция NPV разрешает использовать не только постоянные,но и переменные суммы операций

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double,задающий скорость уценки капитала,выраженное как десятичная дробь
ValueArray() | Обязательный аргумент-массив типа Double,содержащий значения выплат и поступлений.Массив должен содержать как минимум одно отрицательное значение,соответствующее выплате,и одно положительное значение (поступление)

Пример:

' Пример использования функции NPV
' для расчета проекции на текущий момент
' результатов операций,занесенных в массив V()
'(в качестве скорости уценки капитала принята
' фиксированная норма прибыли e)
Dim e,NPb
V(5) As Double 'объявляем массив
e=0.0625 'норма прибыли
V(0)=-8000 ' затраты
' Положительные суммы,отвечающие доходу за 4 года
V(1)=24000:V(2)=26000
V(3)=28000:V(4)=30000
'Проекция на текущий момент
NPb=NPV(e,V())
Категория: Финансовые функции


ObjPtr

Функция ObjPtr

ObjPtr(Ptr)

Недокументированная функция ObjPtr служит для получения указателя на объект(адрес объекта в памяти)

Возвращаемое значение

Возвращает данные типа Long, содержащие указатель на объект

Параметры
Ptr Обязательный аргумент - объектная переменная, указатель на которую требуется получить
Пример
' Используем ObjPtr для тестирования,
' whether two object variables point to the same object
' or Storing objects in the Tag property.

One of the simplest and most effective uses
' of the ObjPtr function is to provide a key
' for quickly locating an object in a Collection Let's suppose
' you have a collection of objects that doesn't expose
' a property that can be used as a key to retrieve
' them in a collection. You can work around this
' by using the value returned by the ObjPtr function
' as the key in the collection:

Dim col As New Collection
Dim obj As CPerson

' create a new CPerson object and add it to the collection
Set obj = New CPerson
obj.Name = "John Smith"
col.Add obj, CStr(ObjPtr(obj))  ' ключ должен быть строкой

Because each object has a distinct ObjPtr value,
' and this value is guaranteed immutable,
' it is very easily to quickly retrieved
' it in the collection:

' Удаляем объект из коллекции
col.Remove CStr(ObjPtr(obj))

' The same trick can be applied to any type of object,
' including VB forms and controls,
' and external objects
Смотри также
StrPtr, VarPtr
Категория
Функции работы с указателями


Oct

Функция Oct

Oct(Number)
Oct$(Number)

Функция Oct(Octal) преобразует аргумент в восьмеричное представление числа. Для явного представления восьмеричного числа без вызова функции следует применять символы &O перед числом(например,&O10 - это десятичное число 8 в восьмеричном представлении)

Возвращаемое значение

Возвращает значение субтипа String типа Variant

Параметры

Number
Обязательный аргумент типа String,представляющий число в диапазоне значений Long или любое допустимое числовое значение.Дробная часть Number автоматически округляется до ближайшего целого перед преобразованием
Если аргумент не попадает в диапазон допустимых значений,генерируется ошибка стадии выполнения Overflow
Если аргумент имеет тип данных String,он должен представлять число,иначе генерируется ошибка времени исполнения Type mismatch
Пример
' Вычисляем шестадцатеричное представление числа 10
Print Oct(10)' возвращает 12
Смотри также
Hex
Категория
Функции преобразования чисел в разные системы счисления


Partition

Функция Partition

Partition(Number,Start,Stop,Interval)

Функция служит для определения числовой оси, в который попадает заданное число. Применяется в задачах статистической обработки, для построения гистограмм

Возвращаемое значение

Возвращает значение типа Variant(String), указывающее положение числа в вычисляемом наборе диапазонов. Возвращаемая строка состоит из двух полей, разделенных двоеточием. Каждое поле содержит число символов, на единицу большее числа цифр в Stop, выводимые числа выравниваются по правому краю поля. Если любой из аргументов имеет значение Null, возвращается значение Null

Параметры
Функция содержит именованные аргументы
Number | Обязательный аргумент - целое число, для которого проверяется положение относительно набора диапазонов
Start | Обязательный аргумент - целое число, задающее начало набора диапазонов. Это число должно быть неотрицательным
Stop | Обязательный аргумент - целое число, задающее конец набора диапазонов. Это число должно быть больше, чем значение Start
Interval | Обязательный аргумент - целое число, задающее размер каждого диапазона в наборе диапазонов от Start до Stop. Это число не может быть меньше 1

Пример

' Предположим, что таблица "Заказы"
' содержит поле "Доставка". Описанный ниже
' запрос на выборку подсчитывает число заказов,
' расходы на доставку которых попадают в каждый
' диапазон. Сначала функция Partition задает
' границы диапазонов, а затем функция SQL Count
' подсчитывает число заказов, попадающих
' в каждый диапазон. В данном примере
' аргументы функции Partition имеют
' следующие значения: начало = 0, конец = 500,
'интервал = 50. Первым диапазоном будет 0:49,
' и так далее до 500

SELECT DISTINCTROW Partition([Доставка],0, 500, 50) AS Range,
Count(Заказы.Доставка) AS Count
FROM Заказы
GROUP BY Partition([Доставка],0,500,50);
Категория
Функции обработки строк


Pmt

Функция Pmt

Pmt(Rate, NPer, PV, [FV], [Due])

Функция Pmt подходит для расчета выплат по закладной (например за дом) или итогов накоплений при ежемесячных банковских взносах

Возвращаемое значение

Возвращает значение типа Double, указывающее объем регулярных платежей по займу при фиксированной учетной ставке

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double, указывающее учетную ставку за период
NPer | Обязательный аргумент типа Integer, указывающее полное число периодов (выплат) за рассматриваемый срок
PV | Обязательный аргумент типа Double, указывающее величину суммы на текущий момент. Например, при займе на покупку автомобиля, сумма займа является текущим значением при расчете будущих платежей
FV | Необязательный аргумент типа Variant, указывающее результат, который должен быть достигнут по завершении выплат. Для займа это, очевидно, нулевое значение (заем должен быть погашен). Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный аргумент типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0

Пример

 'Пример обращения к функции
' для расчета ежемесячных платежей S(t),
' производимых в конце каждого месяца
' по закладным на сумму 100 000 руб.
' сроком на 30 лет под 8% годовых
S(t)=Pmt(8/100*12),360,100000,0,1)
Категория
Финансовые функции


PPmt

Функция PPmt

PPmt(Rate, Per, NPer, PV, [FV], [Due])

Функция PPmt Функция подходит для расчета выплат по закладной (например за дом) или итогов накоплений при ежемесячных банковских взносах

Возвращаемое значение

Возвращает значение типа Double, указывающее часть периодического платежа, приходящуюся на выплату собственно займа. Предполагается, что выплаты делаются регулярно, а сумма выплат и учетная ставка остаются постоянными

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double, указывающее учетную ставку за период
Per | Обязательный аргумент типа Integer, указывающее число периодов (выплат) в диапазоне от 1 до NPer
NPer | Обязательный аргумент типа Integer, указывающее полное число периодов (выплат) за рассматриваемый срок
PV | Обязательный аргумент типа Double, указывающее величину суммы на текущий момент. Например, при займе на покупку автомобиля, сумма займа является текущим значением при расчете будущих платежей
FV | Необязательный аргумент типа Variant, указывающее результат, который должен быть достигнут по завершении выплат. Для займа это, очевидно, нулевое значение (заем должен быть погашен). Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный аргумент типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0

Пример

Категория

Финансовые функции


PV

Функция PV

Pmt(Rate, NPer, Pmt, [FV], [Due])

Функция PV подходит для расчета выплат по закладной (например за дом) или итогов накоплений при ежемесячных банковских взносах

Возвращаемое значение

Возвращает значение типа Double, указывающее проекцию на текущий момент времени будущей суммы, базирующуюся на регулярных платежах и фиксированной учетной ставке

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double, указывающее учетную ставку за период
NPer | Обязательный аргумент типа Integer, указывающее полное число периодов (выплат) за рассматриваемый срок
Pmt | Обязательный аргумент типа Double, указывающее размер выплат за период. Каждый платеж включает как собственно возвращаемую сумму, так и проценты, которые не изменяются от одного платежа к другому
FV | Необязательный аргумент типа Variant, указывающее результат, который должен быть достигнут по завершении выплат. Для займа это, очевидно, нулевое значение (заем должен быть погашен). Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный аргумент типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0

Пример

' В данном примере используется функция PV
' для вычисления проекции суммы в 100 000,
' которая изымается по частям (по 50 00 ежегодно)
' в течение 20 лет. В качестве входных значений
' при расчете используется оценочная процентная
' ставка (0.0825), число платежей (20),
' размер снятой суммы (30000),
' полная итоговая сумма (100 000), а также число,
' задающее режим выплат (1). Так как
' снятая сумма 30000 представляет собой
' изъятые деньги, ей приписывается отрицательный знак

Dim PVal
PVal = PV(0.0825, 20, -30000, 100000, 1)
Смотри также
FV, NPer, Pmt

Категория
Финансовые функции


QBColor

Функция QBColor

QBColor(Color)

Функция QBColor получает RGB-код цвета из старой Бейсик-кодировки цвета. Функция RGB обладает большими возможностями для управления цветом

Возвращаемое значение

Функция QBColor возвращет значение типа Long, содержащее RGB-код заданного цвета

Параметры
Color
Обязательный аргумент типа Integer может представлять целое число от 0 до 15
Бейсик-кодировка
Номер | Цвет | Номер | Цвет
0 | Черный | 8 | Светло-серый
1 | Темно-синий | 9 | Синий
2 | Темно-зеленый | 10 | Зеленый
3 | Бирюзовый | 11 | Голубой
4 | Малиновый | 12 | Красный
5 | Сиреневый | 13 | Розовый
6 | Оливковый | 14 | Желтый
7 | Темно-серый | 15 | Белый
Пример
 ' Установим фон формы в синий цвет
Form1.BackColor = QBColor(9)
Смотри также
RGB
Категория
Функции обработки цвета


Rate

Функция Rate

Rate(NPer, Pmt, PV, [FV], [Due], [Guess])

Функция Rate подходит для расчета выплат по закладной (например за дом) или итогов накоплений при ежемесячных банковских взносах

Возвращаемое значение

Возвращает значение типа Double, указывающее процентную ставку, необходимую для получения указанной суммы за определенный срок путем регулярных взносов

Параметры
Функция содержит именованные аргументы
Rate | Обязательный аргумент типа Double, указывающее учетную ставку за период
NPer | Обязательный аргумент типа Integer, указывающее полное число периодов (выплат) за рассматриваемый срок
Pmt | Обязательный аргумент типа Double, указывающее размер выплат за период. Каждый платеж включает как собственно возвращаемую сумму, так и проценты, которые не изменяются от одного платежа к другому
PV | Обязательный аргумент типа Double, указывающее величину суммы на текущий момент. Например, при займе на покупку автомобиля, сумма займа является текущим значением при расчете будущих платежей
FV | Необязательный аргумент типа Variant, указывающее результат, который должен быть достигнут по завершении выплат. Для займа это, очевидно, нулевое значение (заем должен быть погашен). Если этот аргумент опущен, подразумевается значение 0
Due | Необязательный аргумент типа Variant, указывающее режим выплат. Значение 0 означает, что платежи вносятся в конце каждого периода, а значение 1, что они вносятся в начале каждого периода. Если этот аргумент опущен, подразумевается значение 0
Guess | Необязательный аргумент типа Variant, содержащее оценку значения, возвращенного функцией Rate. Если этот аргумент опущен, используется значение по умолчанию 0.1 (10 процентов)

Пример

' Пример обращения к функции Rate
' для расчета ставки ARR по займу в размере
' 50 000 руб., сроком на 3 года(погашение займа
' ежемесячными платежами в конце месяца
' по 15000 руб. начальное значение точности
' решения 0.1)
Dim ARR
ARR=Rate(12,-2000,50000,0,1,0.1)*12)*100
Категория
Финансовые функции


Replace

Функция Replace

Replace(Expression,Find,Replace[,Start[,Count[,Compare]]])

Новая функция,которая появилась в Visual Basic 6.0

Возвращаемое значение

В результате действия функции Replace возвращается исходная строка с замененным строковым фрагментом

Параметры

Expression
Обязательный аргумент - строка, в которой требуется замена
Find
Обязательный аргумент - подстрока, которую нужно заменить
Replace
Обязательный аргумент - подстрока замены
Start
Необязательный аргумент - указывает позицию
Count
Необязательный аргумент - указывает число
Compare
Необязательный аргумент - вид сравнения

Пример

' меняем слово "хочу" на "люблю" 1 раз
Dim sample$, findstr$, newstr$,retval$
sample = "Я хочу, хочу, хочу тебя" 'строка,которую будем менять
findstr = "хочу" 'подстрока для замены
newstr = "люблю" ' новая подстрока для  замены
retval = Replace (sample,findstr, repl, 1, 1)  ' меняем один раз, начиная с первого символа
Debug.Print retval
Категория
Функции обработки строк


RGB

Функция RGB

RGB(Red, Green, Blue)

Функция RGB получает RGB-код цвета из основных компонентов

Возвращаемое значение

Возвращает значение типа Long, представляющее цвет в модели RGB. Значение RGB указывает относительную интенсивность красного, зеленого и синего компонентов, образующих отображаемый цвет. RGB-код цвета получается из компонентов по формуле:
RGB=red+(green*256)+(blue*65536)

Параметры
Функция содержит именованные аргументы
Red,Green,Blue Обязательный аргумент типа Variant(Integer). Число в интервале от 0 до 255 включительно, представляющие соответственно красный, зеленый и синий компонент цвета. Значение любого аргумента функции RGB, превышающее 255, считается равным 255

Пример

Dim Red
Red=RGB(255,0,0) 'устанавливаем красный цвет
Form1.BackColor=Red ' делаем красным фон формы
Категория
Функции обработки цвета


Right

Функция Right

Right(String, Length)
Right$(String, Length)
RightB(String, Length)
RightB$(String, Length)

Функция Right служит для усечения справа исходной строки заданной длины. Для определения числа символов в строке следует использовать функцию Len

Возвращаемое значение

Возвращает значение типа Variant (String), содержащее указанное число последних символов или байтов строки

Параметры
Функция содержит именованные аргументы
String
Обязательный аргумент - строковое выражение, из которого извлекаются символы. Если выражение имеет значение Null, то возвращается Null
Length
Обязательный аргумент - значение типа Variant (Long). Числовое выражение, указывающее число возвращаемых символов. Если равно 0, то возвращается пустая строка (" "). Если значение Length больше либо равняется числу символов в исходной строке, то возвращается вся строка
Примечание:При отрицательных значениях аргумента генерируется ошибка времени исполнения Invalid procedure call or argument
Если аргумент Null, то генерируется ошибка времени исполнения Invalid use of Null

Пример

' Используем функцию для извлечения
' указанного числа первых символов строки
Dim strMyString, retval
' Задаем строку
strMyString = "Русский_Проект"
retval = Right(strMyString, 1)  ' Возвращает "т"
retval =Right(strMyString, 7) ' Возвращает "_Проект"
retval =Right(strMyString, 27)	' Возвращает "Русский_Проект"
Смотри также
Left, Len, Mid
Категория
Функции обработки строк


Rnd

Функция Rnd

Rnd[(Number)]

Функция Rnd(Random) служит для генерации случайных чисел

Возвращаемое значение

Функция Rnd возвращает значение в диапазоне от 0 до 1 типа Single, содержащее случайное число(причем 1 не входит в этот диапазон, а 0 входит). Строго говоря, функция возвращает псевдослучайные числа. При каждом запуске программы, функция генерирует одну и ту же последовательность случайных чисел. Во избежания этого явления используйте инструкцию Randomize

Примечание:Чтобы получить значения случайных чисел в интервале от min до max используйте формулу:
Int((max - min + 1) * Rnd + min),где min и max-минимальное и максимальное число соответственно

Параметры
Number
Необязательный аргумент представляет число типа Single или любое допустимое числовое выражение. Аргумент может принимать следующие значения:
Аргумент опущен или больше 0
Генерируется следующее случайное число в последовательности. При повторном запуске программы генерируется аналогичная последовательность случайных чисел
Аргумент отрицательный
Генерируется одно и то же число, используя аргумент как опорное число
Аргумент равен 0
Генерируется одно и то же число, используя число при предыдущем вызове функции
Пример
' Генерируем случайные числа от 1 до 7
Dim MyValue
MyValue = Int((7 * Rnd) + 1)
Print MyValue 'выводим число на форме
Категория
Математические функции


Round

Функция Round

Round(Number [,NumDigitAfterDecimal])

Новая функция,которая появилась в Visual Basic 6.0

Функция Round служит для округления чисел до заданной точности(число значащих цифр в дробной части).
Функция Round(Number,2) эквивалентна функции Format(Number,"#.##")

Возвращаемое значение

В результате действия функции возвращается округленное число, тип которого совпадает с типом переданного аргумента

Параметры
Number
Обязательный аргумент может представлять любое допустимое числовое выражение
NumDigitAfterDecimal
Необязательный аргумент, представляющий собой целое положительное число, указывающее, сколько знаков следует оставить после запятой. Если аргумент опущен, то дробная часть отбрасывается

Пример

Dim A,retval
A=123.456789
retval=Round(A) 'возвращается 123
retval=Round(A,3) 'возвращается 123.457
Категория
Математические функции


RTrim

Функция RTrim

RTrim(String)
RTrin$(String)

Функция RTrim(Right Trim) удаляет пробелы в конце строки

Возвращаемое значение

Возвращает исходную строку типа Variant(String) без завершающих пробелов. Если аргумент имеет значение Null, то возвращается Null

Параметры
String
Обязательный аргумент - любое строковое выражение

Пример

Dim retval
retval=RTrim("  <-Русский_Проект->  ")
Print retval
Смотри также
LTrim,Trim
Категория
Функции обработки строк


Second

Функция Second

Second(Time)

Функция Second используется для получения значения секунд минуты из выражения времени

Возвращаемое значение

Возвращает значение типа Variant(Integer) от 0 до 59, содержащее число секунд неполной минуты

Параметры
Time
Обязательный аргумент - любое значение типа Variant, числовым выражением, строковым выражением или любым их сочетанием, которое представляет значение времени. Если время содержит значение Null, возвращается значение Null

Пример

' Вычисляем значение секунды
Dim MyTime, MySecond
MyTime = #4:35:17 PM#  ' присваиваем время
' MySecond содержит 17
MySecond = Second(MyTime)
Print MySecond
Смотри также
Hour,Minute
Категория
Функции дат и времени


Seek

Функция Seek

Seek(FileNumber)

Функция Seek определяет текущее положение указателя чтения\записи внутри файла, открытого с помощью инструкции Open

Возвращаемое значение

Возвращает значение типа Long в интервале от 1 до 2 147 483 647 (т.е. 2^31 – 1) включительно, определяющее текущее положение указателя чтения/записи внутри файла, открытого с помощью инструкции Open

Описание значений, возвращаемых для каждого режима доступа к файлу
Random | Номер записи, которая будет считана или записана следующей
Binary, Output, Append, Input | Номер байта, с которого начинается выполнение следующей операции ввода/вывода. Первому байту файла соответствует номер 1, второму 2 и т.п.

Параметры
FileNumber Обязательный аргумент является выражением типа Integer, содержащим допустимый номер файла

Пример

 'В данном примере функция Seek
' используется для определения текущего
' положения указателя внутри файла.
' Предположим, что файл TESTFILE содержит
' несколько записей определенного
' пользователем типа Record

Type Record	' Тип, определенный пользователем
    ID As Integer
    Name As String * 20
End Type

' Для файлов, открытых в режиме Random, Seek возвращает номер следующей записи

Dim MyRecord As Record	' Объявляет переменную
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
Do While Not EOF(1)	' Цикл до конца файла
    Get #1, , MyRecord	' Читает следующую запись
    Debug.Print Seek(1)	' Выводит номер записи в окно
            ' "Отладка"
Loop
Close #1	' Закрывает файл

' Для файлов, открытых в других режимах,
' Seek возвращает номер байта, с которого
' будет начато выполнение следующей операции.
' Предположим, что файл TESTFILE содержит
' несколько строк текста

Dim MyChar
Open "TESTFILE" For Input As #1	' Открывает файл для чтения
Do While Not EOF(1)	' Цикл до конца файла
    MyChar = Input(1, #1)	' Читает следующий символ данных
    Debug.Print Seek(1)	' Выводит номер байта в окно
            ' "Отладка"
Loop
Close #1	' Закрывает файл
Категория
Функции работы с файлами


Sgn

Функция Sgn

Sgn(Number)

Функция Sgn определяет знак аргумента

Возвращаемое значение

Функция возвращает величину с типом данных Variant(Integer) следующим образом:

Положительный аргумент
Возвращается 1
Отрицательный аргумент
Возвращается -1
0
Возвращается 0

Параметры
Number
Обязательный аргумент представляет собой любое выражение, оцениваемое как число.
Если аргумент не может быть оценен как число, генерируется ошибка времени исполнения Type mismatch

Пример

' Определяем знак числа

Dim Znak
Znak=Sgn(27) ' возвращает 1
Print Znak
Znak=Sgn(-66) ' возвращает -1
Print Znak
Znak=Sgn(0) '  возвращает 0
Print Znak
Категория
Математические функции


Shell

Функция Shell

Shell(PathName,[WindowStyle])

Функция Shell служит для запуска другой программы из VB-программы.Функция Shell запускает другие программы в асинхронном режиме. Это означает, что для продолжения выполнения инструкций, следующих за Shell, не требуется завершения программы, запущенной с помощью функции Shell

Возвращаемое значение

При успешном запуске программы возвращает значение типа Variant (Double), представляющее идентификатор программы(ID).Идентификатор задачи ID является уникальным номером, указывающим на выполняемую программу. Если функция Shell не может запустить указанную программу, возникает ошибка

Параметры
Функция содержит именованные аргументы
PathName | Обязательный аргумент типа Variant (String). Имя выполняемой программы и любые требуемые аргументы или ключи командной строки; допускает включение каталога или папки и диска
WindowStyle | Необязательный аргумент типа Variant (Integer), соответствующее типу окна, в котором выполняется программа. Если аргумент опущен, программа запускается и получает фокус

Именованный аргумент WindowStyle имеет следующие значения:
Константа | Значение | Описание
vbHide | 0 | Окно скрыто, и фокус передается скрытому окну
vbNormalFocus | 1 | Окно имеет фокус и восстанавливает свои стандартные размер и положение
vbMinimizedFocus | 2 | Окно отображается в виде значка с фокусом
vbMaximizedFocus | 3 | Окно развертывается на полный экран с фокусом
vbNormalNoFocus | 4 | Восстанавливаются предыдущие размер и положение окна. Активным остается текущее окно
vbMinimizedNoFocus | 6 | Окно отображается в виде значка. Активным остается текущее окно

Пример

 ' В данном примере функция Shell
' используется для запуска приложения,
' указанного пользователем

' 1 в качестве второго аргумента открывает
' приложение в окне обычного
' размера и передает ему фокус
Dim RetVal
' Запускаем калькулятор
RetVal = Shell("C:\WINDOWS\CALC.EXE", 1)
Категория
Функции обработки системных параметров


Sin

Функция Sin

Sin(Number)

Функция Sin вычисляет синус угла. Аргумент задается в радианах, а не в градусах! Для того, чтобы перевести градусы в радианы используйте формулу
Угол(в радианах)=угол(в градусах)*pi/180, где pi=3.14159265358979. См. пример

Возвращаемое значение

Функция возвращает величину с типом данных Double, лежащую в диапазоне от -1 до 1

Параметры
Number
Обязательный аргумент представляет собой значение типа Double, задающее угол в радианах. Если аргумент не может быть оценен как число, генерируется ошибка времени исполнения Type mismatch

Пример

' Вычисляем синус прямого угла

Dim MyAngle,retval,GradToRad
Const pi = 3.14159265358979 ' определяем константу pi
MyAngle=90 ' задаем угол в градусах
GradToRad=MyAngle*pi/180 ' переводим градусы в радианы
retval=Sin(GradToRad) ' вычисляем синус прямого угла
Debug.Print retval
Смотри также
Cos
Категория
Тригонометрические функции


SLN

Функция SLN

SLN(Cost, Salvage, Life)

Функция SLN служит для вычисления годовой амортизации фондов при фиксированных нормативах амортизации

Возвращаемое значение

Возвращает значение типа Double, указывающее снижение стоимости за выбранный интервал времени по методу с равномерной амортизацией

Параметры
Функция содержит именованные аргументы
Cost | Обязательный аргумент типа Double, указывающее начальную стоимость фондов
Salvage | Обязательный аргумент типа Double, указывающее стоимость фондов к концу периода эксплуатации
Life | Обязательный аргумент типа Double, указывающее длительность периода эксплуатации

Период времени, для которого вычисляется снижение стоимости, должен задаваться в тех же единицах, что и аргумент Life. Все аргументы должны иметь положительные значения

Пример

' Пример обращения к функции SLN
' для расчета годового снижения
' стоимости фондов Dyear с учетом
' линейной зависимости снижения
' (начальная стоимость фондов Cost
' составляет 100 000 руб, остаточная стоимость
' Salvage 10 000 руб. и период эксплуатации
' Life 12 лет
Dim Dyear
Dyear=SLN(100000,10000,12)
Категория
Финансовые функции


Space

Функция Space

Space(Number)

Функция Space используется для создания строки с указанным числом пробелов. Функцию целесообразно использовать для форматирования и удобного представления данных в строках фиксированной длины. Данная функция часто применяется при работе с функциями API, обрабатывающие строковые данные

Возвращаемое значение

Функция Space возвращает значение типа Variant(String), содержащее указанное число пробелов

Параметры
Number
Любое положительное целое число. Если аргумент равен нулю, то возвращается пустая строка. Дробные значения аргумента округляются(не усекаются)
Примечание: При отрицательных значениях аргумента генерируется ошибка времени исполнения Invalid procedure call or argument

Пример

Dim MyString
' Вставляем 10 пробелов между словами
MyString = "Русский" & Space(10) & "Проект"
MsgBox MyString
Категория
Функции обработки строк


Spc

Функция Spc

Spc(n)

Функция Spc используется вместе с инструкцией Print # или методом Print для установки позиции вывода для создания более красивого вида. Больше ее нигде не используют, поэтому назвать функцией ее можно назвать весьма условно. При использовании метода Print и пропорционального шрифта поле печати разбивается на позиции фиксированной ширины, ширина которых равняется средней ширине всех символов текущего размера в используемом шрифте. Такую же ширину имеют пробелы, задаваемые функцией Spc. Следует отметить, что не существует зависимости между числом напечатанных символов и числом позиций фиксированной ширины, занимаемых этими символами. Например, прописная буква "W" шире одной позиции, а строчная буква "I" уже

Возвращаемое значение

Функция Spc что-то возвращает, раз это функция. Только что!

Параметры
n
Обязательный аргумент, задающее число пробелов, которые следует вставить перед выводом на экран или печать следующего выражения в списке. Если n меньше, чем ширина строки вывода, следующий символ печатается сразу после указанного числа пробелов. Если n больше, чем ширина строки вывода, следующая позиция печати вычисляется по приведенной ниже формуле:
текущаяПозицияВывода + (n Mod ширина)
Например, если текущая позиция печати равняется 24, а ширина строки вывода равняется 80, то выражение Spc(90) установит следующую позицию печати равной 34 (текущая позиция печати + остаток от деления 90 на 80). Если разность между текущей позицией печати и шириной строки вывода меньше, чем n (или n Mod ширина), функция Spc задает переход в начало следующей строки и вставку n – (ширина – текущаяПозицияВывода) пробелов
Примечание: Убедитесь, что табличные колонки достаточно широки для размещения широких букв

Пример

' В данном примере функция Spc
' используется для позиционирования вывода
' в файле и в окне Отладка
' Функцию Spc можно использовать в инструкции Print #
Open "TESTFILE" For Output As #1 ' открываем файл для записи
Print #1, "10 пробелов между этой строкой"; Spc(10); "и этой строкой."
Close #1	' Закрываем файл

' Следующая инструкция выводит текст
' в окно Отладка с помощью метода Print,
' печатая перед ним 30 пробелов

Debug.Print Spc(30); "После тридцати пробелов..."
Категория
Функции обработки строк


Split

Функция Split

Split(Expression,[Delimiter],[Limit],[Compare] )

Новая функция, которая появилась в Visual Basic 6.0
Функция Split используется для расщепления строки на субстроки с использованием разделителя субстрок

Возвращаемое значение

Функция Split(Expression) возвращает одномерный массив с типом данных Variant(String), содержащий в качестве элементов найденные субстроки

Параметры
Expression
Обязательный аргумент - строка, которую нужно расщепить. Если аргумент содержит нулевую строку(""), то возвращается пустой массив, т.е. массив без элементов и данных
Delimiter
Необязательный аргумент - символы типа String, которые используются в качестве разделителя строки. Если аргумент опущен, то по умолчанию используется символ пробела(" "). Если же аргумент содержит нулевую строку(""), то возвращается одноэлементный массив, содержащее целую строку
Limit
Необязательный аргумент, содержащий число возвращаемых субстрок. Если аргумент опущен или равен -1, то обрабатывается вся строка
Compare
Необязательный аргумент - числовая константа, определяющая вид сравнения:
vbUseCompareOption=-1
Используется по умолчанию метод сравнения, заданный инструкцией Option Compare
vbBinaryCompare=0
Двоичный метод сравнения. Буквы разных регистров считаются разными
vbTextCompare=1
Текстовый метод сравнения. Сравнение без учета регистров
vbDatabaseCompare=2
Только для Microsoft Access. Сравнение с использованием информации базы данных

Пример

' Считаем число вхождений слова "кол" в строке
Dim stroka As String ' строчка для подсчета
Dim retval ' возвращаемое значение
stroka = "Шит колпак не по-колпаковски. Ливерная колбаса."
retval = Split(stroka, "кол")
MsgBox "'кол' встречается в строке'" & stroka _
& "' " & UBound(retval) & " раза"
Категория
Функции обработки строк


Sqr

Функция Sqr

Sqr(Number)

Функция Sqr вычисляет значения элементарной математической функции квадратного корня

Возвращаемое значение

Возвращает значение типа Double, содержащее квадратный корень указанного числа

Параметры
Number Обязательный аргумент представляет значение типа Double или любое допустимое неотрицательное числовое выражение

Пример

Print Sqr(4) ' возвращается 2
Категория
Математические функции


Str

Функция Str

Str(Number)

Функция Str(String) используется для приведения числового выражения типа Long в строку(тип String)

Возвращаемое значение

Функция Str(Expression) возвращает значение Number, преобразованное в текстовый тип данных String.
При преобразовании в начале строки возвращаемого значения резервируется место для знака числа. Если число положительно, то в этом месте будет пробел, если число отрицательно, то выводится знак минус.
В качестве десятичного разделителя дроби функция Str воспринимает только точку. При использовании других десятичных разделителей (например, запятой) следует использовать функцию CStr

Параметры
Number
Любое выражение, которое можно записать в виде строки

Пример

Dim retval
retval = Str(123)' получаем " 123"
retval=Str(-12.3)' получаем "-12.3"
Смотри также
CStr
Категория
Функции обработки строк


StrComp

Функция StrComp

StrComp(String1, String2[, Compare])

Функция StrComp служит для сравнения двух строк. Аналогична сравнению строк с помощью операторов арифметического сравнения

Возвращаемое значение

Возвращает значение типа Variant (Integer), представляющее результат сравнения строк

Возвращаемые значения
string1 меньше чем string2 | -1
string1 равняется string2 | 0
string1 больше чем string2 | 1
string1 или string2 имеет значение Null | Null

Параметры
Функция содержит именованные аргументы
String1 | Обязательный аргумент - любое допустимое строковое выражение
String2 | Обязательный аргумент - любое допустимое строковое выражение
Compare | Необязательный аргумент. Указывает способ сравнения строк. Аргумент может быть опущен или иметь значение -1, 0, 1 или 2. Если аргумент имеет значение Null, возникает ошибка

Именованный аргумент Compare имеет следующие значения:
Константа | Значение | Описание
vbBinaryCompare | 0 | Двоичное сравнение по внутренним кодам символов.Буквы разных регистров считаются разными.Установлен по умолчанию
vbTextCompare | 1 | Текстовое сравнение строк без учета регистра на основе системной национальной настройки
vbDatabaseCompare | 2 | По установкам базы данных.Используется только в Microsoft Access

Примечание: В справке указывается еще одно неправильное значение (vbUseCompareOption,-1). Однако, вы не сможете использовать этот параметр в своих программах, невзирая на справку

Пример

 'В данном примере функция StrComp
' используется для сравнения строк

Dim MyStr1, MyStr2, MyComp
MyStr1 = "ABCD": MyStr2 = "abcd"
MyComp = StrComp(MyStr1, MyStr2, 1)  ' Возвращает 0
MyComp = StrComp(MyStr1, MyStr2, 0)  ' Возвращает -1
MyComp = StrComp(MyStr2, MyStr1)  ' Возвращает 1
Категория
Функции обработки строк


StrConv

Функция StrConv

StrConv(String,Conversion,[LocaleID])

Функция StrConv служит для преобразования всех символов строки в соответствии с заданным видом преобразования.В версии VB/VB 6 добавлены дополнительные возможности

Возвращаемое значение

Возвращает значение типа Variant (String), содержащее преобразованную строку

Параметры
Функция содержит именованные аргументы
String | Обязательный аргумент - строковое выражение, которое следует преобразовать
Conversion | Обязательный аргумент - значение типа Integer, равное сумме констант, указывающих тип преобразования, которое следует выполнить. Смотри ниже
LocaleID | Необязательный аргумент - локальный идентификатор, если отличается отличается от системного идентификатора. По умолчанию - локальный идентификатор

Константы, задающие коды допустимых преобразований строки:
Константа | Значение | Описание
vbUpperCase | 1 | Преобразование строки к верхнему регистру
vbLowerCase | 2 | Преобразование строки к нижнему регистру
vbProperCase | 3 | Преобразование первой буквы каждого слова в строке в прописную
vbWide | 4 | Преобразование однобайтовых символов в двухбайтовые. Применимо только к дальневосточным национальным настройкам
vbNarrow | 8 | Преобразование двухбайтовых символов в однобайтовые. Применимо только к дальневосточным национальным настройкам
vbHiragana | 32 | Преобразование символов катаканы в символы хираганы. Применимо только к японскому языку
vbUnicode | 64 | Преобразование строки в Unicode с помощью используемой по умолчанию системной кодовой страницы
vbFromUnicode | 128 | Преобразование строки из Unicode с помощью используемой по умолчанию системной кодовой страницы

Константы можно складывать, только если они не являются взаимно обратными

Ниже перечислены допустимые символы, служащие разделителями слов: Null (Chr$(0)), горизонтальная табуляция (Chr$(9)), перевод строки (Chr$(10)), вертикальная табуляция (Chr$(11)), конец страницы (Chr$(12)), возврат каретки ( Chr$(13)), пробел (однобайтовая система) (Chr$(32)). Код пробела в двухбайтовых системах (DBCS) зависит от текущей страны

Пример

Dim mystring
mystring = "русский проект"
 ' Преобразуем первые буквы в прописные
Print StrConv(mystring, vbProperCase)
Смотри также
LCase,UCase
Категория
Функции обработки строк


String

Функция String

String(Number,Character)

Функция String используется для создания строки из одинаковых символов

Возвращаемое значение

Возвращает значение типа Variant (String), содержащее повторяющуюся строку указанной длины

Параметры
Функция содержит именованные аргументы
Number
Обязательный аргумент - число типа Long, определяющее длину возвращаемой строки. Если аргумент имеет значение Null, то возвращаемое значение тоже Null
Character
Обязательный аргумент - значение типа Variant. Код символа или строковое выражение, первый символ которого используется при создании возвращаемой строки. Если аргумент имеет значение Null, возвращается значение Null. Значения аргумента, превышающие 255, преобразуются функцией String в допустимые коды символов по следующей формуле:

character Mod 256

Пример

' В данном примере функция String
' используется для генерации строк,
' содержащих указанное число
' повторяющихся символов

Dim MyString
MyString = String(3, "M") ' Возвращает "MMM"
MyString = String(5, 65) ' Возвращает "ААААА".Возвращает 5 раз символ,код которого 65
MyString = String(6, "Русский_Проект") ' Возвращает "РРРРРР".Повторяет 6 раз первый символ исходной строки
Категория
Функции обработки строк


StrPtr

Функция StrPtr

StrPtr(Ptr)

Недокументированная функция StrPtr служит для получения указателя на Unicode-строку(адреса строки в памяти) для передачи его функции API

Возвращаемое значение

Возвращает данные типа Long, содержащие указатель на первый символ строки

Параметры
Ptr
Обязательный аргумент - переменная строкового типа, на которую требуется получить указатель
Пример
Dim lngCharAddress as Long
Dim strMyVariable as String
strMyVariable = "Some String"
lngCharAddress = StrPtr(strMyVariable)
Категория
Функции работы с указателями


StrReverse

Функция StrReverse

StrReverse(Expression)

Новая функция,которая появилась в Visual Basic 6.0
Функция StrReverse используется для построения заданной строки в обратном порядке

Возвращаемое значение

Функция StrReverse возвращает строку Expression в обратном порядке

Параметры
Expression
Любое выражение,которое можно записать в виде строки

Пример

' Получаем обратный порядок
' и выводим надпись в заголовке формы
Form1.Caption = StrReverse("Русский_Проект"
Категория
Функции обработки строк


Switch

Функция Switch

Switch(Expr-1, Value-1[, Expr-2, Value-2 … [, Expr-n,Value-n]])

Функция Switch удобна для реализации условного выбора из конечного списка значений.Функция Switch вычисляет все выражения, несмотря на то, что возвращается только одно из соответствующих им значений. В некоторых случаях это приводит к нежелательным побочным эффектам. Например, если при вычислении одного из выражений имеет место деление на нуль, возникает ошибка

Возвращаемое значение

Вычисляет список выражений и возвращает значение типа Variant или выражение, соответствующее первому выражению в списке, которое имеет значение True

Параметры
Expr | Обязательный аргумент типа Variant, подлежащее вычислению
Value | Обязательный аргумент-значение или выражение, возвращаемое, если соответствующее выражение имеет значение True

Примечание

Список аргументов функции Switch содержит пары выражений и значений. Выражения вычисляются в том порядке, в котором они включены в список (слева направо). Возвращается значение, соответствующее первому истинному выражению в списке. Если разбиение выражений и значений на пары выполнено неправильно, возникает ошибка выполнения. Например, если выражение-1 имеет значение True, функция Switch возвращает значение-1. Если выражение-1 имеет значение False, а выражение-2 имеет значение True, функция Switch возвращает значение-2, и т.д. Switch возвращает значение Null в следующих случаях: · Ни одно из выражений не имеет значение True. · Первому выражению, имеющему значение True, соответствует значение Null

Пример

 'В данном примере функция Switch
' используется для определения названия
' страны по названию города

Function MatchUp (CityName As String)
 Matchup = Switch(CityName = "Лондон", "Англия", CityName _
= "Рим", "Италия", CityName = "Москва", "Россия")
End Function
Категория
Функции обработки системных параметров


SYD

Функция SYD

SYD(Cost, Salvage, Life, Period)

Функция SYD служит для вычисления годовой амортизации фондов для заданного года с использованием метода линейной амортизации

Возвращаемое значение

Возвращает значение типа Double, указывающее снижение стоимости за выбранный интервал времени по методу с линейной амортизацией

Параметры Функция содержит именованные аргументы
Cost | Обязательный аргумент типа Double, указывающее начальную стоимость фондов
Salvage | Обязательный аргумент типа Double, указывающее стоимость фондов к концу периода эксплуатации
Life | Обязательный аргумент типа Double, указывающее длительность периода эксплуатации
Period | Обязательный аргумент типа Double, указывающее период времени, для которого вычисляется снижение стоимости
Примечание

Аргументы Life и Period должны задаваться в одних и тех же единицах. Например, если Life задается в месяцах, Period также следует указать в месяцах. Все аргументы должны иметь положительные значения

Пример

' Пример обращения к функции
' для расчета амортизационных отчислений DPer
' с учетом линейной зависимости снижения
' (начальная стоимость Cost=100 000 р.,
' остаточная стоимость Salvage=10 000 р.,
' период эксплуатации Life=12 лет
' расчетный период Period=2 года
DPer=SYD(100000,10000,12,2)
Смотри также
DDB,SLN
Категория
Финансовые функции


Tab

Функция Tab

Tab(n)

Функция Tab используется вместе с инструкцией Print # или методом Print для указания позиции вывода для создания более красивого вида. Больше ее нигде не используют, поэтому назвать функцией ее можно назвать весьма условно. При использовании метода Print и функции Tab поле печати разбивается на позиции фиксированной ширины, ширина которых равняется средней ширине всех символов текущего размера в используемом шрифте. Следует отметить, что не существует зависимости между числом напечатанных символов и числом позиций фиксированной ширины, занимаемых этими символами. Например, прописная буква "W" шире одной позиции, а строчная буква "I" уже

Возвращаемое значение

Функция Tab что-то возвращает, раз это функция. Только что!

Параметры
n
Необязательный аргумент задает номер столбца, к которому следует перейти перед выводом на экран или печать следующего выражения из списка. Если аргумент опущен, Tab устанавливает курсор в начало следующей зоны печати. Это позволяет использовать функцию Tab вместо запятой в качестве разделителя списка, если в текущей национальной настройке запятая используется в качестве десятичного разделителя.
Если текущая позиция печати на текущей строке больше n, функция Tab вызывает переход к n-му столбцу на следующей строке вывода. Если n меньше 1, Tab переходит к столбцу 1. Если n больше, чем ширина строки вывода, следующая позиция печати вычисляется по приведенной ниже формуле:

n Mod ширина

Например, если ширина равняется 80, то выражение Tab(90) установит следующую позицию печати равной 10 (остаток от деления 90 на 80). Если n меньше, чем текущая позиция печати, печать начинается в вычисленной позиции печати в следующей строке. Если вычисленная позиция печати больше, чем текущая позиция печати, печать начинается в вычисленной позиции печати в той же строке. Крайней левой позицией печати строки вывода всегда является 1. При печати в файл с помощью инструкции Print # крайней правой позицией печати является текущая ширина результирующего файла, которая устанавливается с помощью инструкции Width #
Примечание: Убедитесь, что табличные колонки достаточно широки для размещения широких букв

Пример

' В данном примере функция Tab
' используется для позиционирования вывода
' в файле и в окне Отладка
' Функцию Tab можно использовать в инструкции Print #
Open "TESTFILE" For Output As #1 ' открываем файл для записи
' Второе слово печатается в столбце 20
Print #1, "Всем"; Tab(20); "привет"
' Если аргумент опущен, курсор
' перемещается в начало следующей зоны печати
Print #1, "Русский"; Tab; "Проект"
Close #1	' Закрываем файл

' Следующая инструкция выводит текст
' в окно Отладка с помощью метода Print,
' печатая текст,начиная со столбца 10

Debug.Print Tab(10); "Начиная со столбца 10"
Категория
Функции обработки строк


Tan

Функция Tan

Tan(Number)

Функция Tan вычисляет тангенс угла в радианах.Применяется в математических расчетах,связанных с экраной графикой.Для того,чтобы перевести градусы в радианы используйте формулу
Угол(в радианах)=угол(в градусах)*pi/180,где pi=3.14159265358979.Смотри пример

Возвращаемое значение

Возвращает значение типа Double

Параметры
Number
Обязательный аргумент типа Double или любое допустимое числовое значение,задающее угол в радианах.Если аргумент не может быть оценен как число,генерируется ошибка времени исполнения Type mismatch
Пример
'Вычисляем тангенс угла 45 градусов
Dim MyAngle,retval,GradToRad
Const pi = 3.14159265358979 ' определяем константу pi
MyAngle=45 ' задаем угол в градусах
GradToRad=MyAngle*pi/180 ' переводим градусы в радианы
retval=Tan(GradToRad) ' вычисляем тангенс 45 градусов
Debug.Print retval
Смотри также
Atn
Категория
Тригонометрические функции


Time

Функция Time

Time

Функция Time используется для получения текущего времени по системным часам компьютера. Для установки системного времени используйте инструкцию Time. Для получения системной даты и времени в одной переменной используйте функцию Now

Возвращаемое значение

Возвращает значение типа Variant(Date), содержащее текущее время по системным часам компьютера. Формат возвращаемого значения определяется национальными системными настройками

Параметры

Не содержит аргументов

Пример

' В данном примере функция
' Time используется для определения
' текущего системного времени
Dim MyTime
MyTime = Time  ' Возвращает текущее системное время
Смотри также
Now
Категория
Функции дат и времени


Timer

Функция Timer

Timer

Функция Timer используется для получения числа секунд, прошедших с полуночи до текущего момента дня

Возвращаемое значение

Возвращает значение типа Single, представляющее число секунд, прошедших после полуночи. Значение, возвращаемое таймером, ограничено числом секунд в сутках и обнуляется ровно в полночь

Параметры

Не содержит аргументов

Пример

' Используем Timer для
' временной остановки приложения.
' Кроме того, используем инструкцию DoEvents для передачи
' управления другим процессам на время паузы

Dim PauseTime, Start, Finish, TotalTime
If (MsgBox("Нажмите Да, чтобы прервать выполнение на 5 секунд", 4)) = vbYes Then
    PauseTime = 5  ' Задает длительность
    Start = Timer  ' Задает начало паузы
    Do While Timer < Start + PauseTime
        DoEvents	' Передает управление другим процессам
    Loop
    Finish = Timer  ' Задает конец паузы
    TotalTime = Finish - Start ' Вычисляет длительность паузы
    MsgBox "Длительность паузы: " & TotalTime & " секунд"

Else
    End
End If
Категория
Функции дат и времени


TimeSerial

Функция TimeSerial

TimeSerial(Hour,Minute,Second)

Функция TimeSerial служит для получения времени во внутреннем предствлении системы по значениям заданных компонентов (часов,минут,секунд). Можно использовать числовые выражения для описания времени, на определенное число часов, минут и секунд более позднего или раннего, чем указанное (см.пример)

Возвращаемое значение

Возвращает значение типа Variant (Date), содержащее значение времени, соответствующее указанным часу, минуте и секунде

Параметры
Функция содержит именованные аргументы
Hour | Обязательный аргумент-значение типа Variant (Integer). Число от 0 (12:00 A.M.) до 23 (11:00 P.M.) включительно или числовое выражение
Minute | Обязательный аргумент-значение типа Variant (Integer). Любое числовое выражение
Second | Обязательный аргумент-значение типа Variant (Integer). Любое числовое выражение
Примечание

Значение каждого аргумента функции TimeSerial должно лежать в соответствующем диапазоне: 0 — 23 для часов и 0 — 59 для минут и секунд.
Если значение какого-либо аргумента превышает максимально допустимое для него, то соответствующим образом увеличивается более старший компонент времени. Например, 75 минут означают 1 час и 15 минут. Однако если значение любого аргумента лежит вне диапазона -32 768 — 32 767, или сочетание всех трех аргументов описывает дату, лежащую вне допустимого диапазона дат, возникает ошибка

Пример

 'В этом примере аргументами функции TimeSerial
' являются не абсолютные значения,
' а числовые выражения. Возвращается время,
' на 6 часов и 15 минут более раннее,
' чем полдень, т.е. 5:45:00
Dim myTime
myTime=TimeSerial(12 - 6, -15, 0)
Категория
Функции дат и времени


TimeValue

Функция TimeValue

TimeValue(Time)

Функция TimeValue служит для получения времени во внутреннем предствлении системы по заданной текстовой строке, содержащей дату\время

Возвращаемое значение

Возвращает значение типа Variant (Date), содержащее время. Если аргумент Time содержит значение Null, возвращается значение Null

Параметры
Time Обязательный аргумент обычно задается строковым выражением, представляющим время от 0:00:00 (12:00:00 A.M.) до 23:59:59 (11:59:59 P.M.) включительно. Кроме того, в качестве аргумента время можно использовать любое выражение, представляющее время в этом диапазоне
Примечание Если время содержит сведения о дате, они не возвращаются функцией TimeValue. Однако если время содержит недопустимые сведения о дате, возникает ошибка

Пример

' В данном примере функция  TimeValue
' используется для преобразования строки во время.
' Кроме того, можно использовать текстовые константы
' даты для непосредственного присвоения времени
' переменной типа Variant или Date, например,
' MyTime = #4:35:17 PM#
Dim MyTime
MyTime = TimeValue("4:35:17 PM")	' Возвращает время
Категория
Функции дат и времени


Trim

Функция Trim

Trim(String)

Функция Trim объединяет действия двух функций LTrim и RTrim, удаляя пробелы как справа, так и слева

Возвращаемое значение

Возвращает исходную строку типа Variant(String) без начальных и завершающих пробелов. Если аргумент имеет значение Null, то возвращается Null

Параметры
String
Обязательный аргумент может представлять любое строковое выражение

Пример

Dim retval
retval=Trim("  <-Русский_Проект->  ")
Print retval
Смотри также
LTrim,RTrim
Категория
Функции обработки строк


TypeName

Функция TypeName

TypeName(VarName)

Функция TypeName определяет тип данных переменной или свойства объекта

Возвращаемое значение

Возвращает значение типа String, представляющее тип переменной

Список возвращаемых значений
Byte | Byte
Integer | Integer
Long | Long
Single | Single
Double | Double
Currency | Currency
Decimal | Decimal
Date | Date
String | String
Boolean | Boolean
Variant(Error) | Error
Variant(Empty) | Empty
Variant(Null) | Null
Object | Object
Объект неизвестного типа | Unknown
Объектная переменная, не содержащая ссылки на объект | Nothing
Примечание

Если аргумент представляет массив, то возвращается одна из перечисленных выше строк (или Variant) с добавлением пустых скобок. Например, если аргумент представляет массив целых значений, то функция возвращает строку "Integer()"

Параметры
VarName
Обязательный аргумент представляет выражение типа Variant, определяющее любую переменную, за исключением переменной с определяемым пользователем типом
Пример
Dim myVar
myVar = "Русский_Проект"
Print TypeName(myVar) 'возвращается String
Категория
Функции обработки строк


UBound

Функция UBound

UBound(ArrayName[,Dimension])

Функция UBound(Upper Bound) служит для определения верхней границы (индекса самого последнего элемента) массива по заданному измерению

Возвращаемое значение

Возвращает значение типа Long, содержащее наибольший возможный верхний индекс для указанного измерения массива

Параметры
Элемент | Описание
ArrayName | Обязательный. Имя переменной массива, соответствующее стандартным соглашениям о наименовании переменных. При задании в качестве аргумента переменной, не являющейся массивом, генерируется ошибка времени исполнения Type mismatch
Dimension | Необязательный. Значение типа Variant(Long). Целое число, указывающее, для какого из измерений возвращается верхняя граница. Первому измерению соответствует 1, второму – 2 и т. д. Если параметр Dimension опущен, предполагается значение равное 1

Примечание

Функция UBound применяется совместно с функцией LBound для определения размера массива. Функция LBound используется для нахождения нижней границы для измерения массива

Пример
' Пример употребления функции UBound
' Объявляем трехмерный массив
Dim myArray(1 To 100, 0 To 3, -3 To 4)
Dim retval
retval=UBound(myArray,1) 'возвращает 100
retval=UBound(myArray,2) 'возвращает 3
retval=UBound(myArray,3) 'возвращает 4
Категория
Функции обработки массивов


UCase

Функция UCase

UCase(String)

Функция UCase(Upper Case) преобразует символы строки в верхний регистр.Вместо UCase можно использовать универсальную функцию преобразования строк StrConv

Возвращаемое значение

Возвращет строку, которая отличается от входной тем, что все буквы преобразованы в прописные

Параметры
String
Обязательный аргумент может представлять любое строковое выражение
Пример
 ' Преобразуем  строчку в верхний регистр
Form1.Caption=UCase("русский_проект")
Смотри также
LCase,StrConv
Категория
Функции обработки строк


Val

Функция Val

Val(String)

Функция Val(Value) служит для преобразования аргумента в числовой тип данных. Функция Val прекращает чтение строки на первом символе, который она не может распознать в качестве части числа. Символы, которые часто рассматриваются в качестве частей числовых значений, типа знака доллара и запятых, не распознаются. Однако, эта функция распознает префикс основания &O (для восьмеричных) и &H (для шестнадцатеричных значений). Пробелы, символы табуляции и символы перевода строк удаляются из значения параметра. Функция Val распознает в качестве разделителя целой и дробной части только точку (.). Если используются другие разделители целой и дробной частей (например в национальных версиях приложений), следует применять для преобразования строки в число функцию CDbl

Внимание У функции имеется баг! Например, при вызове функции Val("7.1%") генерируется ошибка Type mismatch. Хотя другие примеры работают нормально: Val("7%") возвращает 7, Val("7.%") возвращает 7, Val("7.0%") возвращает 7

Возвращаемое значение

Возвращает числовое представление аргумента с подходящим типом данных

Параметры
String
Обязательный аргумент является любым допустимым строковым выражением
Пример
' В следующем примере возвращается
' числовое значение 1615198
Print Val("    1615 198th Street N.E.")

' В следующем примере возвращается десятичное
' значение -1 для приведенного ниже
' шестнадцатеричного значения
Print Val("&HFFFF")
Категория
Функции обработки строк


VarPtr

Функция VarPtr

VarPtr(Ptr)

Недокументированная функция VarPtr служит для получения указателя на переменную(адреса переменной в памяти) или на элемент массива

Возвращаемое значение

Возвращает данные типа Long, содержащие указатель на объект

Параметры
Ptr
Обязательный аргумент может быть любым типом кроме массива
Пример
' Получим адрес переменной
Dim lngVariableAddress as Long
Dim dblMyVariable as Double
lngVariableAddress = VarPtr(dblMyVariable)

' Получим адрес четвертого элемента массива
Dim lngElementAddress as Long
Dim lngArrayOfLongs(9) as Long
' адрес четвертого элемента массива
lngElementAddress = VarPtr(lngArrayOfLongs(3))
Категория
Функции работы с указателями


VarType

Функция VarType

VarType (VarName)

Функция служит для определения кодового обозначения типа данных переменной или свойства объекта

Возвращаемое значение

Возвращает значение типа Integer, указывающее подтип переменной

Параметры
VarName
Обязательный параметр, являющий значением типа Variant, содержащим любую переменную
Возвращаемые значения

Константа | Значение | Описание
vbEmpty | 0 | Значение Empty (не инициализированная переменная)
vbNull | 1 | Значение Null (действительные данные отсутствуют)
vbInteger | 2 | Значение типа Integer
vbLong | 3 | Значение типа Long integer
vbSingle | 4 | С плавающей точкой обычной точности
vbDouble | 5 | С плавающей точкой двойной точности
vbCurrency | 6 | Значение типа Currency
vbDate | 7 | Значение типа Date
vbString | 8 | Значение типа String
vbObject | 9 | Объект
vbError | 10 | Значение ошибки
vbBoolean | 11 | Значение типа Boolean
vbVariant | 12 | Значение типа Variant (используется только с массивами значений типа Variant)
vbDataObject | 13 | Объект доступа к данным
vbDecimal | 14 | Значение типа Decimal
vbByte | 17 | Значение типа Byte
vbUserDefinedType | 36 | Значения типа Variant, содержащие типы, определенные пользователем
vbArray | 8192 | Массив

Примечания

Функция VarTypeникогда не возвращает значение vbArray само по себе. Эта константа всегда складывается с каким-либо другим значением, указывающим тип массива. Константа vbVariantвозвращается только в сочетании с константой vbArray, чтобы показать, что в параметре функции VarType указан массив типа Variant. Например, значение возвращенное для массива целых чисел вычисляется как vbInteger + vbArray, или равняется 8194. Если объект имеет свойство,установленное по умолчанию, то функция VarType(Object) возвращает тип этого свойства объекта

Пример
' В данном примере функция VarType
' используется для проверки подтипа переменной
Dim IntVar, StrVar, DateVar, retval
' Инициализируем переменные
IntVar = 459  'число типа Integer
StrVar = "Русский_Проект"  'строка
DateVar = #7/27/66#  'дата
retval = VarType(IntVar)
Print retval
retval = VarType(DateVar)
Print retval
retval = VarType(StrVar)
Print retval
Категория
Функции преобразования чисел в разные системы счисления


Weekday

Функция Weekday

Weekday(Date,[FirstDayOfWeek])

Функция используется для получения номера дня(между 1 и 7) из указанной даты

Возвращаемое значение

Возвращает значение типа Variant(Integer), содержащее целое число(между 1 и 7), представляющее день недели

Параметры
Функция содержит именованные аргументы
Часть | Описание
Date | Обязательный. Значение типа Variant, числовое выражение, строковое выражение или любая комбинация, позволяющая отобразить дату.Допустимый диапазоно дат-01.01.0000 до 31.12.9999.Если аргумент содержит зарезервированное слово Null, то функцией возвращает Null
Firstdayofweek | Необязательный. Константа, указывающая первый день недели. Если этот аргумент опущен, считается, что неделя начинается с воскресенья

Ниже перечислены допустимые значения аргумента FirstDayOfWeek:

Константа | Значение | Описание
vbUseSystem | 0 | Используется значение NLS API
vbSunday | 1 | Воскресенье (по умолчанию)
vbMonday | 2 | Понедельник
vbTuesday | 3 | Вторник
vbWednesday | 4 | Среда
vbThursday | 5 | Четверг
vbFriday | 6 | Пятница
vbSaturday | 7 | Суббота

Возвращаемые значения

Ниже перечислены значения, возвращаемые функцией Weekday:

Константа | Значение | Описание
vbSunday | 1 | Воскресенье
vbMonday | 2 | Понедельник
vbTuesday | 3 | Вторник
vbWednesday | 4 | Среда
vbThursday | 5 | Четверг
vbFriday | 6 | Пятница
vbSaturday | 7 | Суббота

Пример
' Используем функцию для
' определения дня недели, соответствующего
' указанной дате
Dim MyDate
MyDate = "Июль 27, 1966"   ' Присваиваем дату
Print Weekday(MyDate,vbMonday)   ' возвращается 3, поскольку
   ' MyDate соответствует среде
Категория
Функции дат и времени


WeekdayName

Функция WeekdayName

WeekdayName(Weekday[, Abbreviate [, FirstDayOfWeek] ])

Новая функция, которая появилась в версии Visual Basic 6.0
Функция WeekdayName получает полное или сокращенное название дня недели по его номеру

Возвращаемое значение

Возвращает строку, содержащее полное или сокращенное название дня недели

Параметры
Weekday
Обязательный аргумент типа Long, определяющего день недели(1-7). Допускается использование констант:
vbSunday=1
Воскресенье(по умолчанию)
vbMonday=2
Понедельник
vbTuesday=3
Вторник
vbWednesday=4
Среда
vbThursday=5
Четверг
vbFriday=6
Пятница
vbSaturday
Суббота
Abbreviate
Необязательный аргумент - флаг типа Boolean, указывающий на вид возвращаемого дня недели. По умолчанию установлен в False, что означает вывод полного дня недели
FirstDayOfWeek
Необязательный аргумент - числовая константа, указывающая, какой день недели считать первым:
vbUseSystem=0
Используется системная информация
vbFirstJan1=1
Неделя, содержащая 1 января
vbFirstFourDays=2
Первая неделя, содержащая как минимум 4 дня нового года
vbFirstFullWeek=3
Первая полная неделя года
Пример
' Выводим сокращенное название седьмого месяца
Form1.Caption = WeekdayName(7, True)
Смотри также
MonthName
Категория
Функции дат и времени


Year

Функция Year

Year(Date)

Функция используется для получения года из заданной даты

Возвращаемое значение

Возвращает значение типа Variant(Integer), содержащее целое число, представляющее год

Параметры
Date
Обязательный параметр является любым значением типа Variant, числовым выражением, строковым выражением или любой комбинацией, с помощью которой может быть отражена дата. Допустимый диапазоно дат - 01.01.0000 до 31.12.9999. Если аргумент содержит зарезервированное слово Null, то возвращается Null
Пример
' В данном примере функция Year
' используется для определения года, соответствующего
' указанной дате
Dim MyDate, MyYear
MyDate = #7/27/1966#   ' присваиваем дату
MyYear = Year(MyDate)
Print MyYear
Категория
Функции дат и времени


Функции Visual Basic:Функции по категориям

Список функций по категориям

Математические функции
Функции обработки массивов
Функции обработки строк
Тригонометрические функции
Функции преобразования типа данных
Функции загрузки данных
Функции работы с файлами
Функции обработки системных параметров
Функции обработки цвета
Функции работы с датами
Функции преобразования чисел в разные системы счисления
Функции работы с объектами
Финансовые функции
Функции форматирования
Функции работы с указателями

  • Математические функции
    • Abs
    • Exp
    • Fix
    • Int
    • IsNumeric
    • Rnd
    • Round
    • Sgn
    • Sqr
  • Функции обработки массивов
    • Array
    • IsArray
    • LBound
    • UBound
  • Функции обработки строк
    • Asc
    • Chr
    • Filter
    • InStr
    • InStrRev
    • Join
    • LCase
    • Left
    • Len
    • LTrim
    • Mid
    • Partition
    • Replace
    • Right
    • RTrim
    • Space
    • Spc
    • Split
    • Str
    • StrComp
    • StrConv
    • String
    • StrReverse
    • Tab
    • Trim
    • TypeName
    • UCase
    • Val
  • Тригонометрические функции
    • Atn
    • Cos
    • Log
    • Sin
    • Tan
  • Функции преобразования типа данных
    • CBool
    • CByte
    • CCur
    • CDate
    • CDbl
    • CDec
    • CInt
    • CLgn
    • CSgn
    • CStr
    • CVar
    • CVDate
  • Функции загрузки данных
    • Choose
    • IIf
    • InputBox
    • LoadPicture
    • LoadResData
    • LoadResPicture
    • LoadResString
    • MsgBox
  • Функции работы с файлами
    • CurDir
    • Dir
    • EOF
    • FileAttr
    • FileDateTime
    • FileLen
    • FreeFile
    • GetAttr
    • Input
    • Loc
    • LOF
    • Seek
  • Функции обработки системных параметров
    • CallByName
    • Command
    • CVErr
    • DoEvents
    • Environ
    • Erl
    • Error
    • GetAllSettings
    • GetSetting
    • IMEStatus
    • IsEmpty
    • IsError
    • IsMissing
    • IsNull
    • Shell
    • Switch
  • Функции обработки цвета
    • QBColor
    • RGB
  • Функции дат и времени
    • Date
    • DateAdd
    • DateDiff
    • DatePart
    • DateSerial
    • DateValue
    • Day
    • Hour
    • IsDate
    • Minute
    • Month
    • MonthName
    • Now
    • Second
    • Time
    • Timer
    • TimeSerial
    • TimeValue
    • Weekday
    • WeekdayName
    • Year
  • Функции преобразования чисел в разные системы счисления
    • Hex
    • Oct
    • VarType
  • Функции работы с объектами
    • CreateObject
    • GetAutoServerSettings
    • GetObject
    • IsObject
  • Финансовые функции
    • DDB
    • FV
    • IPmt
    • IRR
    • MIRR
    • NPer
    • NPV
    • Pmt
    • PPmt
    • PV
    • Rate
    • SLN
    • SYD
  • Функции форматирования
    • Format
    • FormatCurrency
    • FormatDateTime
    • FormatNumber
    • FormatPercent
  • Функции работы с указателями
    • ObjPtr
    • StrPtr
    • VarPtr

Наверх.


Функции Visual Basic:Автор руководства

 Данное руководство написано А.Климовым.

Автор выражает огромную благодарность Бестужеву Андрею за активную поддержку и неоценимую помощь в составлении справочника

Примеры,коды,советы и многое другое вы можете найти на сайте Русский_Проект по адресу:http://rusproject.narod.ru


Функции Visual Basic:Format

 Функция Format

Символы форматирования,применяемые для создания пользовательских форматов числовых величин

0
Прототип цифры.Выводит цифру или нуль. Если форматируемое выражение содержит цифру в позиции, соответствующей прототипу "0" в строке формата, то в данной позиции будет выведена эта цифра; в противном случае в данной позиции будет выведен нуль.Если число цифр в целой или дробной части форматируемого числа меньше, чем число прототипов "0" слева или справа от десятичного разделителя в строке формата, соответственно, то в начало или конец числа будут добавлены недостающие нули. Если количество цифр в дробной части форматируемого числа больше, чем количество прототипов "0" справа от десятичного разделителя в строке формата, то число будет округлено с соответствующей точностью. Если количество цифр в целой части форматируемого числа больше, чем количество прототипов "0" слева от десятичного разделителя в строке формата, то лишние цифры будут выведены без изменения
Print Format(6.789, "00.0000") ' возвратит 06,7890
#
Прототип цифры. Выводит цифру или не выводит ничего. Если форматируемое выражение содержит цифру в позиции, соответствующей символу # в строке формата, то в данной позиции будет выведена цифра; в противном случае данная позиция останется пустой.Отличие данного символа от символа формата "0" состоит в том, что если количество цифр в целой или дробной части форматируемого числа меньше, чем число символов "#" слева или справа от десятичного разделителя в строке формата, соответственно, то недостающие нули в начале или конце числа добавлены не будут
Print Format(6.789, "##.0000") ' возвратит 6,7890
.
Десятичный разделитель. В некоторых национальных настройках десятичным разделителем служит запятая. Десятичный разделитель указывает, сколько цифр следует вывести в целой и дробной части форматируемого числа, т.е. слева и справа от десятичного разделителя. Если строка формата содержит слева от десятичного разделителя только символы "#", то число, меньшее единицы, при выводе будет начинаться с десятичного разделителя. Если требуется, чтобы дробные числа всегда изображались с начальным нулем перед десятичным разделителем, следует использовать символ формата "0" в качестве первого символа строки числового формата. Фактический символ, используемый в качестве десятичного разделителя, определяется установленным в системе числовым форматом. В России в качестве десятичного разделителя используется запятая
Print Format(0.789, "##.0000") ' возвратит ,7890
%
Процентный формат. Выражение умножается на 100. Символ процентов (%) выводится в позиции, соответствующей позиции прототипа в строке формата
Print Format(0.17, "0%") ' возвратит 17%
,
Разделитель групп разрядов. В некоторых национальных настройках в качестве разделителя групп разрядов используется точка. Разделитель групп разрядов разделяет позиции тысяч и сотен в числе, целая часть которого состоит из четырех или большего числа цифр. Стандартное применение разделителя групп разрядов задается в строке формата, в которой пробел окружен символами вывода цифры (0 или #). Два соседних разделителя групп разрядов или разделитель групп разрядов, стоящие сразу перед десятичным разделителем (даже если символ десятичного разделителя не указан явно), означают, что масштаб числа следует изменить, разделив его указанное число раз на 1000 и округлив по мере надобности. Такой способ позволяет выводить большие числа. Например, строка формата "##0,," отображает сто миллионов как 100, а числа, меньшие одного миллиона, как 0. Два соседних разделителя групп разрядов, находящихся в любой другой позиции, обрабатываются как один разделитель групп разрядов. Фактический символ, используемый в качестве разделителя групп разрядов, определяется установленным в системе числовым форматом. В России в качестве разделителя групп разрядов используется пробел
:
Разделитель компонентов времени. В некоторых национальный настройках в качестве разделителя компонентов времени используется другой символ. Разделитель компонентов времени используется для разделения компонентов времени (часов, минут и секунд). Фактический символ, используемый в качестве разделителя компонентов времени, определяется текущей национальной настройкой. В России в качестве разделителя компонентов времени используется двоеточие
Print Format(Now, "h:m:s") ' возвратит к примеру 11:23:35
/
Разделитель компонентов даты. В некоторых национальный настройках в качестве разделителя компонентов даты используется другой символ. Разделитель компонентов даты используется для разделения компонентов даты (дня, месяца и года). Фактический символ, используемый в качестве разделителя компонентов даты, определяется текущей национальной настройкой. В России в качестве разделителя компонентов даты используется точка
E- E+ e- e+
Экспоненциальный формат. Если строка формата содержит хотя бы один прототип цифры (0 или #) справа от символов "E-", "E+", "e-" или "e+", то число выводится в экспоненциальном формате, а между числом и показателем степени помещаются символы "E" или "e". Число цифр в показателе степени определяется числом символов вывода цифры справа от символа экспоненциального формата. Для вывода знака минус (-) перед отрицательными значениями показателя степени следует использовать символы "E-" или "e-"; в этом случае знак перед положительными значениями показателя степени не ставится. Для вывода знака плюс перед положительными значениями показателя степени и знака минус перед отрицательными значениями показателя степени следует использовать символы "E+" или "e+"
- + $ ()
Вывод указанного символа. Для вывода любого не перечисленных здесь символов следует поместить перед ним символ обратной косой черты (\) или заключить символ в прямые кавычки (" ")
\
Вывод следующего символа из строки формата. Многие символы в строке формата имеют специальное назначение и не могут быть выведены в явном виде, если перед ними не стоит символ обратной косой черта. Сам символ "обратная косая черта" при этом не отображается. Наличие данного символа форматирования эквивалентно заключению следующего за ним в строке формата символа в прямые кавычки. Для вывода самого символа "обратная косая черта" следует указать его дважды (\\).Примерами символов, которые не могут быть включены в строку форматирования явным образом, являются символы форматирования даты и времени (a, c, d, h, m, n, p, q, s, t, w, y, / и :), символы форматирования чисел (#, 0, %, E, e, запятая и точка) и символы форматирования строк (@, &, <, > и !)
"ABC"
Вывод строки, заключенной в прямые кавычки (" "). Для представления кавычек в аргументе формат в программе необходимо использовать функцию Chr(34) (34 является кодом символа прямых кавычек ("))